2012-10-04 3 views
22

Ich versuche, eine Android-Anwendung mit nativen Code zu debuggen mit ADT 20.0.3 auf Eclipse und es gibt mir diese Fehlermeldung:Anwendung kann nicht ABI erkennen, wenn sie versuchen, NDK zu debuggen

[2012-10-04 12:09:12 - ndk_android] Unknown Application ABI: 
[2012-10-04 12:09:12 - ndk_android] 
[2012-10-04 12:09:12 - ndk_android] Unable to detect application ABI's 

Die jni-Dateien erstellen richtig und ich kann die Anwendung mit dem nativen Code ausführen.

Meine Build-Datei Application.mk sieht wie folgt aus:

APP_OPTIM  := debug 
APP_ABI := armeabi armeabi-v7a 
APP_STL := gnustl_static 

LOCAL_LDLIBS := $(ANDROID_NDK)/sources/cxx-stl/gnu-libstdc++/libs/armeabi-v7a/libgnustl_static.a 

Wer weiß, was die Ursache für diesen Fehler ist? Hat jemand Native Debugging mit ADT 20 arbeiten?

ich im Anschluss an die Führung von hier: http://tools.android.com/recent/usingthendkplugin

EDIT:

Nach dem Reinigen und Entfernen von temporären Dateien/Ordnern/Einstellungen, die ich immer noch die gleichen Fehler. Ich habe dann eine saubere Eclipse installiert. Installierte die CDT, dann die ADT, und das scheint dieses Problem behoben zu haben. Ich glaube, das Problem war mit Sequoyah oder einem anderen Plugin/Einstellungen in Eclipse.

Das wurde gelöst, aber jetzt bekomme ich ein anderes Problem. Die Breakpoints funktionieren nicht, aber ich behalte das für eine andere Frage.

+0

Ja, Sequoyah koexistiert nicht gut mit ADT 2.x –

+0

möglich Duplikat von ["Unbekannte Anwendung ABI:" während 'Debug als native Anwendung'] (http://stackoverflow.com/questions/20047348/unknown-application -abi-while-debug-als-native-application) – CAMOBAP

Antwort

3

Ich glaube, das Problem mit Sequoyah oder einer anderen Plugin/Einstellungen in Eclipse war. Ich habe eine saubere Eclipse installiert. Installiert die CDT, dann die ADT, und das scheint dieses Problem zu beheben.

1

Versuchen Sie, die Verzeichnisse OBJ und libs zu bereinigen und nur einen ABI zu erstellen. Fügen Sie zum Beispiel APP_ABI = armeabi neben NDK_DEBUG = 1

+1

Vielen Dank! :) – berserk

11

Gehen Sie zu Einstellungen -> Android -> NDK. Sie stellen einen korrekten Pfad dafür ein, es wird funktionieren. So funktioniert das für mich.

+2

Danke, das hat mir geholfen. – james82345

+0

Ich finde NDK nicht unter meinen Einstellungen-Android. Stimmt etwas in meinem Fall nicht? Bitten helfen –

0

Ich löste das Problem, indem ich den APP_PLATFORM-Eintrag in der Application.mk-Datei hinzufügte und sicherstellte, dass die gleiche min sdk-Version in der Manifestdatei erwähnt wurde.

Zum Beispiel, in meinem Fall, APP_PLATFORM: = 21 zu Application.mk Datei hinzugefügt, um Manifest-Datei hinzugefügt.

Auch Sie mussten den Haltepunkt in jni Funktionsdefinition nicht bei jni native Funktionsdeklarationen auf Java-Seite zu halten.

Ich hoffe, es hilft.

0

hatte ich diesen Fehler, wenn NDK R16B verwendet feste, wenn sie auf r10e geschaltet.

Verwandte Themen