it-swarm.com.de

Installieren Sie die App auf dem genymotion-Gerät, und treffen Sie Folgendes: "INSTALL_FAILED_CPU_ABI_INCOMPATIBLE"

Wenn ich meine App auf einem genymotion simulater-Gerät installiere, kann sie nicht gut installiert werden. Auf der Konsole habe ich "INSTALL_FAILED_CPU_ABI_INCOMPATIBLE"

23
topxebec

Die Anwendung (sicherlich ein Spiel) muss nur ARM sein. __ Genymotion ist eine x86-Plattform. Kompilieren Sie die Anwendung daher auf x86.

Möglicherweise können Sie die Unterstützung für ARM manuell installieren: http://forum.xda-developers.com/showthread.php?t=2528952

37
slvn

Wenn Sie IntelliJ verwenden, kann dies mit der Standardkonfiguration des Projekts zusammenhängen. IntelliJ geht, sofern nicht anders angegeben, davon aus, dass native Bibliotheken im Ordner Libs gespeichert werden. Hier speichern Entwickler normalerweise ihre JAR-Bibliotheken. Der IntelliJ-Build-Prozess packt die JAR-Datei in den Ordner Native-Datei im APK.

Wenn Sie dieses Problem haben, können Sie ein gutes How-to finden:

INSTALL_FAILED_CPU_ABI_INCOMPATIBLE Intellj

Dies half, das Problem zu lösen, das ich hatte.

7
hylander0

Vielleicht möchten Sie meine Antwort hier überprüfen:

INSTALL_FAILED_CPU_ABI_INCOMPATIBLE auf dem Gerät, das intellij verwendet

Ich weiß, dass es für IntelliJ geschrieben wurde, aber Sie könnten auf ein ähnliches Problem mit Eclipse stoßen, in dem es der Meinung ist, dass einige normale Java-Dateien oder JAR-Bibliotheken nativen Code sind und ihn in das kompilierte APK aufnehmen. Um dies herauszufinden, können Sie schnell die endgültige APK öffnen (es handelt sich lediglich um eine JAR-Datei, daher sollten die meisten Dienstprogramme sie dekomprimieren können), und stellen Sie sicher, dass nur META-INF, res, AndroidManifest.xml, classes.dex und resources.arsc angezeigt werden. . Es ist möglich, dass es andere gültige Dateien in einer normalen Java-Android-Anwendung gibt, aber wenn Sie dort etwas anderes sehen, insbesondere einen libs-Ordner, ist dies wahrscheinlich das Ergebnis des Kompilierungsprozesses, der den Eindruck hat, dass diese anderen Objekte native Bibliotheken sind (kompilierte C-Dateien)/C++ - Code unter Verwendung der JNI).

In diesem Fall müssen Sie Eclipse so konfigurieren, dass die verwendeten Java-Bibliotheken nicht als nativer Code interpretiert werden. Jetzt benutze ich Eclipse nicht persönlich, also weiß ich nicht, wo die richtigen Einstellungen wären, aber basierend auf this answer sieht es so aus, als würde Eclipse automatisch davon ausgehen, dass der libs-Ordner im Stammverzeichnis Ihres Projekts enthält native Bibliotheken. Die einfachste Lösung besteht darin, alle verwendeten Java-Bibliotheken in einen anderen Ordner (z. B. libraries) zu verschieben.

3
FuegoFro

http://blog.iteedee.com/2014/02/Android-install_failed_cpu_abi_incompatible-intellj/ .__ Der Fehler INSTALL_FAILED_CPU_ABI_INCOMPATIBLE wird generiert, wenn Sie versuchen, eine Android-Anwendung auf einem Gerät mit einer nicht unterstützten CPU-Architektur zu installieren. Dieser Fehler bezieht sich normalerweise auf die systemeigenen Bibliotheken, die nicht für die CPU-Architektur des Geräts gepackt sind (z. B. x86, ARMv6, ARMv7 usw.).

Wenn Sie jetzt über eine Anwendung verfügen, die keine nativen Bibliotheken oder * .so-Dateien verwendet, kratzen Sie sich möglicherweise an dieser. Wenn Sie IntelliJ IDEA IDE für Ihre Android-Entwicklung verwenden, packen Sie möglicherweise alle Ihre zugehörigen .JAR-Dateien in den Speicherort der Native Library-Datei in Ihrem APK.

1
ltzMaxwell

Die Ursache des gleichen Problems war in meinem Fall anders.

Ich hatte ein paar Abhängigkeitsgläser im /libs-Verzeichnis meines Android-App-Projekts hinzugefügt. Eines dieser Gefäße hatte Bibliothek im Gefäßformat exportiert; ein Glas innerhalb einer Glasdatei. Ich habe festgestellt, dass die mit Gläsern mit einer solchen Struktur erstellten apk mit x86-basierten Geräten nicht kompatibel sind (weiß nicht warum).

0
Pawan