AndroidStudio下阅读源码的正确姿势

听说在Window下用Source Insight查看android源码比较方便,前几日换了mac,正巧看了一些Hook的内容,对源码阅读开始感兴趣。然后进入源码后发现很多方法标红,例如Activity中的这个execStartActivity()【这里问发现中AS中查看标红,以为是查看SDK代码不全的原因,后来发现不是因为这个,而特地网络下载了android_6.0源码,发现还是标红的】

AndroidStudio下阅读源码的正确姿势_第1张图片
标红无法点击,显示找不到方法

一通Google或者百度,教的姿势都是去哪哪下来源码文件,然后repo编译神马的,我目前的功力只是想阅读一下源码好嘛!还不跨到编译调试源码那个等级好嘛!

好了,吐槽完了,现在教大家如何不标红,就像这样

AndroidStudio下阅读源码的正确姿势_第2张图片
现在是可以点进去的


AndroidStudio下阅读源码的正确姿势_第3张图片


在百度了很久之后,才知道不能看的原因是因为这个方法被@hide了,对此的解释是这些方法目前处于开发阶段,Google不希望被开发者看到。

好了,开始科学看源码的时候到了:

https://github.com/anggrayudi/android-hidden-api

下载你的Android Studio项目下app下的build.gradle中compileSdkVersion对应的版本sdk

AndroidStudio下阅读源码的正确姿势_第4张图片
就是这个版本

然后找到你电脑中sdk对应的版本,用git下来的对应sdk的android.jar替换对应的android.jar

mac下默认地址user/Library/Android/sdk/platforms

我要替换的是23,所以我进入android-23文件夹下替换对应的android.jar

然后进入AS可以发现@hide的方法可以正确进入了(据说Eclipse需要重启)

PS:我在操作后,进入源码后二货AS竟然提示我找不到对应的API-23,因为已经被我修复所以没办法截图了,解决办法是重新设置下sdk路径(即使原来的是正确的)回来就可以了。

AndroidStudio下阅读源码的正确姿势_第5张图片
就是这货

然后就可以开心得阅读源码啦!(目前好像只支持到23,项目中用24或者25的话,就不能在敲代码的时候看源码啦,不过可以另开一个项目专门用来阅读源码用。)

~至此( biu~biu

你可能感兴趣的:(AndroidStudio下阅读源码的正确姿势)