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

最近在项目模块化时遇到了一个问题,子项目打包成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看不到源码的断点问题。

你可能感兴趣的:(Android,Studio,kotlin)