gdb调试aapt2

研究aapt2代码逻辑,以及android AssetManager,对于aapt2的逻辑有些地方不是非常明确,希望通过调试的方式更清晰的了解代码执行逻辑

1 编译安卓源码 这个就不说了
2 找到带调试符号的aapt2’
源码目录执行
find . name aapt2
./out/host/linux-x86/obj/EXECUTABLES/aapt2_intermediates/aapt2 这个目录就是带调试符号的aapt2

gdb ./out/host/linux-x86/obj/EXECUTABLES/aapt2_intermediates/aapt2 进行调试

这时候你会发现,有些变量被优化了 print不出来值,可以修改编译参数,让c++编译器不去优化。

在./fameworks/base/tools/aapt2/Android.mk添加如下代码
203 行

LOCAL_CPPFLAGS += -O0 
make aapt2

就生成了可以正常调试的aapt2 好好研究吧

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值