Android studio 查看aar源码出现/* compiled code */

博主在项目模块化时,遇到Kotlin子项目打包成aar后在主项目运行看不到源码、无法断点调试的问题。经分析,问题出在kotlin子项目pack成aar时源码上传有问题。博主通过修改gradle源码上传问题及利用Android studio子工程断点特性解决了该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在项目模块化时遇到了一个问题,子项目打包成aar之后在主项目中运行看不到源码,关键代码显示成 /* compiled code */,给断点调试带来了很大的阻力。翻了一波网上解决此类问题的方法,一般都是安装Java Bytecode Decompiler来解决,因为代码是反编译的,所以看不到源码。

不过我本次遇到的问题原因不在此类,因为用纯Java语言开发打包的aar就可以看到全部源码,由于这个子项目全部是用kotlin语言进行开发的,导致打包aar之后就会看不到源码,这个问题百思不得其解,后来通过两种方式解决了这个问题。

源码上传问题

这种问题如果java可以看到源码而kotlin开发的aar看不到源码的话,一般来说不是Android studio的反编译插件问题导致的,而是因为kotlin子项目在pack成aar的时候源码上传有问题导致。针对自己上传gradle的源码问题修改即可,我此次问题在于没有artifacts没有加入add上传对应源码的task。

用子工程来进行断点

这是无意间发现的Android studio的一个debug特性,子项目打包成aar之后引入主工程运行之后,Android studio打开子项目,用子项目来断点调试 运行的主工程,此时子项目中源码的断点也可以生效,用这个小技巧也可以处理aar看不到源码的断点问题。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值