NO HAY ABIS COINCIDENTES cuando instalar apk


Intenté instalar mi aplicación en Android L Preview Intel Atom Virtual Device, falló con un error:

INSTALL_FAILED_NO_MATCHING_ABIS

¿Qué significa?

 373
Author: zhaoyuanjie, 2014-07-04

15 answers

INSTALL_FAILED_NO_MATCHING_ABIS es cuando intentas instalar una aplicación que tiene bibliotecas nativas y no tiene una biblioteca nativa para tu arquitectura de cpu. Por ejemplo, si compiló una aplicación para armv7 y está tratando de instalarla en un emulador que utiliza la arquitectura Intel en su lugar, no funcionará.

 526
Author: Hiemanshu Sharma,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-03-21 11:59:54

INSTALL_FAILED_NO_MATCHING_ABIS es cuando intenta instalar una aplicación que tiene bibliotecas nativas y no tiene una biblioteca nativa para su arquitectura de cpu. Por ejemplo, si compiló una aplicación para armv7 y está tratando de instalarla en un emulador que utiliza la arquitectura Intel en su lugar, no funcionará.

Usando Xamarin en Visual Studio 2015. Solucionar este problema por:

  1. Abra su xamarin .sln
  2. Haga clic derecho en su android proyecto
  3. Haga clic en propiedades
  4. Haga clic en Opciones de Android
  5. Haga clic en la pestaña 'Avanzado'
  6. En "Arquitecturas soportadas"marque lo siguiente:

    1. armeabi-v7a
    2. x86
  7. Guardar

  8. F5 (construcción)

Editar: Se ha informado que esta solución también funciona en Visual Studio 2017.

Editar 2: Esta solución ha sido reportada como funcionando en Visual Studio 2017 para Mac también.

 128
Author: Asher Garland,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-04-27 20:22:00

Estoy publicando una respuesta de otro hilo porque es lo que funcionó bien para mí, el truco es agregar soporte para ambas arquitecturas:

Publicando esto porque no pude encontrar una respuesta directa y tuve que mirar un par de publicaciones diferentes para obtener lo que quería hacer...

Pude usar el emulador x86 Accelerated (HAXM) simplemente agregando esto a la compilación de mi módulo.gradle script Dentro de android {} bloque:

splits {
        abi {
            enable true
            reset()
            include 'x86', 'armeabi-v7a'
            universalApk true
        }
    }

Run (build)... Ahora habrá un (yourapp)-x86-depurar.apk en su carpeta de salida. Estoy seguro de que hay una manera de automatizar la instalación al ejecutar, pero solo inicio mi emulador HAXM preferido y uso la línea de comandos:

adb install (yourapp)-x86-debug.apk
 76
Author: Driss Bounouar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-11-17 16:05:33

Si usas Genymotion necesitas Instalar ARM Translation y GApps

 58
Author: R00We,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-01-24 15:34:12

Este es de hecho un error extraño que puede ser causado por multidexing su aplicación. Para evitarlo, usa el siguiente bloque en la compilación de tu app.gradle archivo:

android {
  splits {
    abi {
        enable true
        reset()
        include 'x86', 'armeabi-v7a'
        universalApk true
    }
  }
  ...[rest of your gradle script]
 31
Author: Igor Ganapolsky,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-03-01 14:07:13

Sé que había muchas respuestas aquí, pero la versión TL; DR es esta (Si estás usando Xamarin Studio):

  1. Haga clic derecho en el proyecto Android en el árbol de soluciones
  2. Seleccione Options
  3. Ir a Android Build
  4. Vaya a la pestaña Advanced
  5. Compruebe las arquitecturas que utiliza en su emulador (Probablemente x86 / armeabi-v7a / armeabi)
  6. Hacer una aplicación kickass:)
 11
Author: Jonathan Perry,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-09-07 06:16:58

El comentario de @enl8enmentnow debería ser una respuesta para solucionar el problema usando genymotion:

Si tiene este problema en Genymotion incluso cuando usa el traductor ARM es porque está creando un dispositivo virtual x86 como el Google Nexus 10. Elija un dispositivo virtual ARM en su lugar, como una de las tabletas personalizadas.

 7
Author: muetzenflo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-06-15 09:23:07

Visual Studio mac - puede cambiar el soporte aquí:

introduzca la descripción de la imagen aquí

 5
Author: LeRoy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-06-21 20:46:07

Esta solución funcionó para mí. Prueba esto, agrega las siguientes líneas en la compilación de tu app.gradle file

splits {
    abi {
        enable true
        reset()
        include 'x86', 'armeabi-v7a'
        universalApk true
    }
}
 4
Author: vaibhav,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-06-22 11:25:46

En visual studio community edition 2017, a veces la selección de ABI compatibles de las opciones de Android no funciona.

En ese caso, verifique que el.csproj tiene la siguiente línea y no hay líneas duplicadas en las mismas configuraciones de compilación.

 <AndroidSupportedAbis>armeabi;armeabi-v7a;x86;x86_64;arm64-v8a</AndroidSupportedAbis>

Para editar,

  1. Descarga tu proyecto Android
  2. Haga clic derecho y seleccione Editar proyecto ...
  3. Asegúrese de tener la línea anterior solo una vez en una configuración de compilación
  4. Guardar
  5. Haga clic derecho en su proyecto de Android y recargar
 2
Author: Kusal Dissanayake,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-03-27 06:57:30

Para genymotion en mac, estaba recibiendo el error INSTALL_FAILED_NO_MATCHING_ABIS al instalar mi apk.

En mi proyecto no había ningún "APP_ABI", pero lo agregué en consecuencia y construyó solo un apk para ambas arquitecturas, pero funcionó. https://stackoverflow.com/a/35565901/3241111

 1
Author: myDoggyWritesCode,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:18:36

Esto funcionó para mí ... Android > Gradle Scripts > build.gradle (Módulo: app) añadir dentro de android*

android {
  //   compileSdkVersion 27
     defaultConfig {
        //
     }
     buildTypes {
        //
     }
    // buildToolsVersion '27.0.3'

    splits {
           abi {
                 enable true
                 reset()
                 include 'x86', 'armeabi-v7a'
                 universalApk true
               }
    }
 }

introduzca la descripción de la imagen aquí

 1
Author: ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-08-14 22:31:47

En Android 8:

Apache.commons.io:2.4

Da INSTALL_FAILED_NO_MATCHING_ABIS, intenta cambiarlo a 2.5 o 2.6 y funcionará o lo comentará.

 1
Author: Saba Jafarzadeh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-09-14 17:14:46

Esto me pasó a mí. Revisé el SDK Manager y me dijo que el que estaba usando tenía una actualización. Lo actualizé y el problema desapareció.

 0
Author: Barry Fruitman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-06-18 03:01:45

Hay una manera simple:

  1. Desenchufe el dispositivo conectado
  2. Cierra Android Studio
  3. Reinicia Android Studio
  4. Conecte el dispositivo con el cable USB
  5. Pulse el botón Ejecutar y vaya a tomar un café
 -2
Author: HA S,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-03-15 08:39:08