我有这样的问题:
[2013-11-18 14:38:50 - HelloJni] Unknown Application ABI:
[2013-11-18 14:38:50 - HelloJni]
[2013-11-18 14:38:50 - HelloJni] Unable to detect application ABI's
Run Code Online (Sandbox Code Playgroud)
每个项目都会出现此问题,我正在尝试将其调试为"本机".我已经看过这个,这个和这个主题,但这个解决方案并没有对我的案例产生任何影响.
在其他计算机或VM上,相同的项目可以使用相同的设置正常运行.
表现
...
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="14" />
<application android:label="@string/app_name"
android:debuggable="true">
...
Run Code Online (Sandbox Code Playgroud)
Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := hello-jni
LOCAL_SRC_FILES := hello-jni.cpp
include $(BUILD_SHARED_LIBRARY)
Run Code Online (Sandbox Code Playgroud)
项目选项中的Verison也已设置为api-14.
我还下载了eclipse,sdk,ndk的新版本.我清理了所有系统范围的变量和PATH元素.我的机器在win7x64下运行.
PS.只有当我尝试调试时才会出现问题,当我构建并运行它时 - 运行良好.
Edit1这是我的ndk-build DUMP_APP_ABI大纲
c:\Users\Usr\workspace\HelloJni>D:\ndk\ndk-build.cmd DUMP_APP_ABI
armeabi
c:\Users\Usr\workspace\HelloJni>
Run Code Online (Sandbox Code Playgroud)
Edit2重要通知.我试图debug as native在不同的机器上运行下一步git clone- > import to …
我最近加载了新的Android开发工具,SDK 20130717和NDK r9.
到目前为止,我已经拥有了以前的版本,在我的两个系统中都可以正常运行和调试Eclipse,XP和W7/64.
现在,在新工具安装和所需路径环境发生变化后,带有新工具的W7/64可以正常工作并调试我的应用程序.
当我选择"Debug As"+"Android Native Application"时,它可以正常工作.
然而XP,尽管他们在文件夹/ cygwin等方面具有确切的配置,在安装新工具和必要的路径env改变之后,它看起来无法启动ndk-dbg而且它确实在最后等待在"启动MyApp(1):( 100%)".在我选择"Debug As"+"Android Native Application"之后会发生这种情况.
关于它可能是什么原因的任何提示?或者我错过了XP和r9调试的任何已知问题?
谢谢,克里斯托斯
*编辑
试图手动启动ndk-gdb,这是我得到的,任何提示都是受欢迎的
大段引用
$ ndk-gdb --start --verbose --force
Android NDK安装路径:/ cygdrive/e/android-ndk-r9
使用默认的adb命令:/ cygdrive/e/adt-bundle-windows-x86-20130717/sdk/platform-tools/adb
发现ADB版本:Android Debug Bridge版本1.0.31
使用ADB标志:
使用JDB命令:/cygdrive/e/Android/Java/jdk1.7.0_21/bin/jdb
使用自动检测的项目路径:.
找到包名:myndkpackage
申请目标ABIs:armeabi-v7a
设备API级别:17
设备CPU ABIs:armeabi-v7a armeabi
兼容设备ABI:armeabi-v7a
使用gdb setup init:./ libs/armeabi-v7a/gdb.setup
使用工具链前缀:/cygdrive/e/android-ndk-r9/toolchains/arm-linux-androideabi-4.6/prebuilt/windows/bin/arm-linux-androideabi-
使用app out目录:./ obj/local/armeabi-v7a
找到debuggable标志:true
找到设备gdbserver:/ data/data/myndkpackage/lib/gdbserver
找到数据目录:'/ data/data/myndkpackage'
找到第一个可启动的活动:myndkpackage.MainActivity
启动活动:myndkpackage/myndkpackage.MainActivity
命令:adb_cmd shell am start -D -n myndkpackage/myndkpackage.MainActivity
开始:意图{cmp = myndkpackage/.MainActivity}
命令:adb_cmd shell sleep 2
发现运行PID:2787
杀死现有的调试会话
命令:adb_cmd shell kill -9 2753
成功启动了gdbserver. …