相关疑难解决方法(0)

调试Android库中的本机代码

我的工作区布局是:

.
??? ApplicationLibrary
?   ??? AndroidManifest.xml
?   ??? ...
?   ??? jni
?   ??? libs
?   ??? ...
?   ??? src
??? Application
    ??? AndroidManifest.xml
    ??? ant.properties
    ??? ...
Run Code Online (Sandbox Code Playgroud)

如何在Eclipse中调试本机库?有人暗示过这个吗?

debugging android android-ndk android-library

20
推荐指数
1
解决办法
2万
查看次数

ICS上的本机堆栈跟踪?

由于某种原因,我不能在我这里的ICS设备上发生本地(C/C++)地址/堆栈跟踪.

在我的Nexus 7上,当本机库崩溃时,不会输出任何内容.log.redirect-stdio设置为通过时设置为1,/system/default.prop并且/data/local.prop都不起作用.

我试着设置log.redirect-stdiotrue使用stop,setprop,start的命令,但仍然没有原生的堆栈跟踪是输出到logcat的.

谷歌我的意思是来吧......我每天都因为与我的错误,不可预测的关系而对Google产生越来越多的信心.

android stack-trace android-ndk nexus-s android-4.0-ice-cream-sandwich

19
推荐指数
1
解决办法
1398
查看次数

Android NDK调试

Android NDK文档对于我来说似乎并不清楚你运行什么序列的命令来获取调试信息,以及提供的ndk-gdb可执行文件.如果有什么行可以打破的格式,以及在什么文件中,是否有某个规范?如果是这样,那么,您如何为此调试器提供该信息,以及通过什么方式?关于这个过程是如何运作的,我对各方面都毫无头绪.

谢谢

sdk android gdb android-ndk gdbserver

8
推荐指数
2
解决办法
1万
查看次数

如何调试原生Android应用程序?

我已经安装了Sequoyah Android Native Support,现在,我可以执行调试模式.我在哪里调用本机方法的同一行一个断点,所以当我执行调试Java模式中,蚀在此行中停止时,我执行"NDK-GDB"和我午餐C/C++调试模式,我看到控制台做了些什么.但是,我怎么能把C断点?因为我的C代码是.so库,所以我不能在这个文件中放置断点.我有一个JNI floder,其中有.c和.h文件,但是当我放置断点时不要停止.Eclipse日志识别断点,但打印错误.

break-insert com_example_pruebaffmpeg_MainActivity.c:4323 error,msg ="没有加载符号表.使用\"file \"命令."

android android-ndk

7
推荐指数
1
解决办法
2836
查看次数

Android libc.so崩溃?

我正在使用AndEngine与PhysicsBox2DExtension制作游戏.我的游戏一直在崩溃,我在未经过滤的LogCat中得到了这个:

07-06 13:25:27.266: I/DEBUG(19582): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-06 13:25:27.266: I/DEBUG(19582): Build fingerprint: 'TMOUS/SGH-T959V/SGH-T959V/SGH-T959V:2.2.1/FROYO/VUVKD1:user/release-keys'
07-06 13:25:27.274: I/DEBUG(19582): pid: 22238, tid: 22263  >>> com.prattia.webs.testgfx5 <<<
07-06 13:25:27.274: I/DEBUG(19582): signal 11 (SIGSEGV), fault addr deadbaad
07-06 13:25:27.286: I/DEBUG(19582):  r0 00000000  r1 afd14921  r2 00000027  r3 00000070
07-06 13:25:27.286: I/DEBUG(19582):  r4 afd42328  r5 00000000  r6 00000000  r7 43095ba0
07-06 13:25:27.297: I/DEBUG(19582):  r8 447d75ac  r9 43095b5c  10 80aa23f4  fp 43095b58
07-06 13:25:27.297: …
Run Code Online (Sandbox Code Playgroud)

crash android libc box2d andengine

6
推荐指数
2
解决办法
1万
查看次数

用GDB远程调试纯C程序

我正在尝试远程调试CAndroid设备上的纯程序.Android设备(目标)通过USB连接到主机.

我所做的是:从复制的目标以下文件: /system/lib,/vendor/lib,/system/bin/app_process,和/system/bin/linker.

目标:

  • 复制gdbserverNDK所述目标设备
  • 发送exe我要调试的内容
  • 在目标上使用运行的gdb服务器 ./gdbserver :5039 exec
    • 这基本上执行过程,得到一个 pid

主办:

  • 启用了端口 adb forward tcp:5039 tcp:5039
  • 跑了:arm-eabi-gcc exec.
  • 然后在gdb中:
    • set solib-search-path ...,我早先从目标中提取的库
    • target remote :5039

arm-eabi-gcc可以连接到远程进程,甚至继续(c)的执行.但是,我无法设置断点.如果我这样做,我会收到以下错误: Cannot access memory at address xxx.

我在这里错过了什么吗?

谢谢.

c android gdb android-ndk gdbserver

5
推荐指数
1
解决办法
1680
查看次数