Отладка собственного кода в android при eclipse не выполняется
Я пытаюсь отладить собственный код в приложении csipsimple android с помощью опции Debug As->Android Native Application
. Я использовал этот учебник для этого. Я продолжаю получать эти ошибки:
[2013-06-09 17:24:24 - SipHome] Unknown Application ABI:
[2013-06-09 17:24:24 - SipHome] Android
[2013-06-09 17:24:24 - SipHome] Unknown Application ABI:
[2013-06-09 17:24:24 - SipHome] NDK:
[2013-06-09 17:24:24 - SipHome] Unknown Application ABI:
[2013-06-09 17:24:24 - SipHome] Uses
[2013-06-09 17:24:24 - SipHome] Unknown Application ABI:
[2013-06-09 17:24:24 - SipHome] local
[2013-06-09 17:24:24 - SipHome] Unknown Application ABI:
[2013-06-09 17:24:24 - SipHome] settings
[2013-06-09 17:24:24 - SipHome] Unknown Application ABI:
[2013-06-09 17:24:24 - SipHome]
[2013-06-09 17:24:24 - SipHome] Unknown Application ABI:
[2013-06-09 17:24:24 - SipHome]
[2013-06-09 17:24:24 - SipHome] Unknown Application ABI:
[2013-06-09 17:24:24 - SipHome]
[2013-06-09 17:24:24 - SipHome] Unknown Application ABI:
[2013-06-09 17:24:24 - SipHome]
armeabi
[2013-06-09 17:24:24 - SipHome] Unable to detect application ABI's
Я пробовал
Невозможно обнаружить приложение ABI при попытке отладки NDK (не имеет значения, я не использовал Sequoya),
http://www.cocos2d-x.org/boards/6/topics/24216 (не работает)
https://groups.google.com/forum/?fromgroups#!topic/android-ndk/icsQtRy1FZQ (сработал загадочно один раз)
http://www.mjbshaw.com/2012/11/android-ndk-eclipse-fixing-unknown.html (не проблема)
http://en.it-usenet.org/thread/12874/17301/ (не работает)
Я использую пакет ADT v22 (eclipse 4.2.1) с Android NDK r8e под Ubuntu 12.10.
csipsimple использует jni и swig для вызова собственного кода.
Я в отчаянии, помоги мне!
Ответы
Ответ 1
Для NDK R9 (работает и в других, но строка # может отличаться):
${NDK}/build/core/add-application.mk
line 138
добавить "#" в начале строки.
# $(call __ndk_info,WARNING: APP_PLATFORM $(APP_PLATFORM) is larger than \
android:minSdkVersion $(APP_MIN_PLATFORM_LEVEL) in $(APP_MANIFEST))
Один символ, 30 секунд исправить... пойти отладить собственный код.
Ответ 2
После запуска этого процесса, а затем повторного создания моего приложения, чтобы увидеть, что работает, я нашел следующее:
в AndroidManifest.xml, вы должны установить минимальную/целевую версию SDK, соответствующую версии вашего телефона.
[[email protected]:anotherJniDebugTest]$ adb shell getprop|grep build.version
[ro.build.version.codename]: [REL]
[ro.build.version.incremental]: [5c6c6b0b1b]
[ro.build.version.release]: [4.3.1]
**[ro.build.version.sdk]: [18]**
поэтому мои версии манифеста должны были быть 18. Если бы моя версия была установлена на 17, я бы получил вышеприведенную ошибку
Ответ 3
Используете ли вы функции info, warn и т.д. для регистрации сообщений в любом из файлов Android.mk? Как $(info my-log-message)
Похоже, что вы это делаете и регистрируете строку:
Android NDK: использует локальные настройки
Если это так, удалите их все и повторите попытку.