android java到native(c/c++)代码联合调试

2012年11月28日星期三 

0.前言
一直想用调试的方式来弄清楚android内部运行的流程,我们都知道android的开发是包括java层和native层的,肯定也会涉及java代码和c/c++代码的调试。今天花了点时间对这两个方面做了下尝试。

1.环境
为了省事,今天下载了google官方提供的最新的开发工具(ADT bundle for mac),直接集成好了jdt/cdt/adt。
 

NDK也是直接下载的最新的:


平台用的是昨天编译的2.3.5

1.step by step
为了方便,直接使用ndk自带的工程
a).导入hellojni






b).进入hellojni目录编译native代码


(具体参见NDK中的doc)
c).在eclilpse中设置ndk



d).编译并安装apk






e).设置debug configuration
-------------native-----------------



选中当前的project



添加当前source path




debug打勾



close掉
------------设置断点-----------------
随便设置几个断点







选中这个项目,右鍵debug as,使用前面配置的configuration启动debug




-------------java-----------------

选中相应进程点小蟑螂图标





回到debug视图




在emulator 中重新运行hellojni
就会触发刚才的断点。








不过好像有时候还不能自动的切换,要自己点选相应的debug栈才能切换。
看它文档的意思,ndk的debug功能应该在近期的版本中进一步增强。
到此就ok了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值