J'ai un problème avec les bibliothèques tierces importées dans mon projet.
J'ai lu beaucoup d'articles à ce sujet, mais je ne sais pas comment le gérer correctement.
Je mets mes classes .so dans le dossier.
Le problème est que je tente d'exécuter l'application que je reçois
[INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]
25 juillet 2019:
Je faisais face à ce problème dans Android Studio 3.0.1:
Après avoir vérifié de nombreux articles, voici Fix qui fonctionne:
Accédez au module build.gradle et dans le bloc Android, ajoutez ce script:
splits {
abi {
enable true
reset()
include 'x86', 'armeabi-v7a', 'x86_64'
universalApk true
}
}
Solution simple. N'hésitez pas à commenter. Merci.
13 septembre 2018 Cela a fonctionné pour moi lorsque j'ai ajouté plusieurs types et défini niversalApk avec false pour réduire la taille d'apk.
splits {
abi {
enable true
reset()
include 'x86', 'x86_64', 'armeabi', 'armeabi-v7a', 'mips', 'mips64', 'arm64-v8a'
universalApk false
}
}
J'ai rencontré le même problème dans l'émulateur, mais je l'ai résolu comme ceci:
Créer un nouvel émulateur avec une image système x86_64 (ABI)
C'est ça.
Cette erreur indique que le système (périphérique) n'est pas capable d'exécuter l'application.
J'espère que cela est utile à quelqu'un.
Mon application fonctionnait sur l'API 26 x 86 du Nexus 5X (périphérique virtuel sur émulateur) sans erreur, puis j'ai inclus un AAR tiers. Ensuite, il continue à donner cette erreur. J'ai nettoyé, reconstruit, coché/décoché l'option d'exécution instantanée, effacé les données dans AVD, effectué le démarrage à froid, mais le problème persiste. Ensuite, j'ai essayé la solution trouvée ici . il/elle dit que ajouter des séparations et des blocs abi pour 'x86', 'armeabi-v7a' dans le fichier build.gradle du module et qu’il est hallelujah, il est à nouveau propre et frais :)
Edit: Sur ce post La solution de Driss Bounouar semble être la même. Mais mon émulateur était au format x86 avant d’ajouter le nouvel émulateur AAR et HAXM fonctionnait déjà.
Après un certain temps, j'étudie et je comprends que le chemin a été trouvé, ma bibliothèque a raison. J'ai juste besoin d'ajouter des dossiers pour différentes architectures:
Image système ARM EABI v7a
Intel x86 Atom Image système
Image système MIPS
API Google
Toute personne confrontée à cela lors de l'utilisation de cmake build, s'assure que vous avez bien inclus les quatre plates-formes prises en charge dans le bloc Android {} de votre module d'application:
externalNativeBuild {
cmake {
cppFlags "-std=c++14"
abiFilters "arm64-v8a", "x86", "armeabi-v7a", "x86_64"
}
}
Si vous rencontrez cette erreur en travaillant avec votre projet Flutter, vous pouvez ajouter le code suivant dans le module build.gradle
et dans Android block
puis dans le bloc defaultConfig
. Cette erreur s'est produite lorsque j'essayais de créer un apk flutter.
Android{
...
defaultConfig{
...
//Add this ndk block of code to your build.gradle
ndk {
abiFilters 'armeabi-v7a', 'x86', 'armeabi'
}
}
}