NDK下断点调试

6 篇文章 0 订阅
2 篇文章 0 订阅

Pro Android C++ with NDK读书笔记 之 NDK下断点调试


背景

早期我在写Android C层的代码都是直接在subline Text中编写的,个人觉得eclipse对ndk层的支持并不那么美。老家伙了,又是个做事严谨的人,代码崩溃,直接查看logcat日志,看看代码基本都能知道哪里出错,并不需要借助ide来调试。当然,这个只限于个人开发者。团队开发是另一种情况,而且运用不当的开源库也会出现种种难以定位的问题。所以喽,有必要了解下ndk C层代码的断点调试


环境

win7

ADT版本Build: v22.6.2-1085508

NDK版本  android-ndk-r9d-windows-x86


使用步骤

. eclipse配置NDK路径
Window--->Preference菜单 --> Android标签下的NDK 配置NDK路径

. 导入工程

. 声明app可调试
<application android:label="@string/app_name"
android:debuggable="true">

.  右键工程,选择 Add Native Support
--碰到问题 
 [2015-12-14 20:27:43 - Unable to launch cygpath. Is Cygwin on the path?] java.io.IOException: Cannot run program "cygpath": CreateProcess error=2, 系统找不到指定的文件。  
安装cygwin,配置好环境变量(如何不重启电脑让环境变量生效,自行搜索)

重启eclipse,然后rebuild,


. 编译出错 Method 'NewStringUTF' could not be resolved
查看工程头文件目录配置,没出错, 这个并不是错误,只能算是eclipse对NDK的支持不够完美。如何绕过?
右键工程 property->C/C++ General->Code Analysis—>配置当前工程(或者workspace)->使 method cannot be resolved  不选中(即此项不进行报错 )

成功了!!!

. 设置断点,右键工程,选择Debug As --> Android Native Application

至此,断点调试成功

注:Pro Android C++ with NDK有点老了,现在不需要去修改ndk-gdb脚本的。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值