用IDEA查看SDK中的源碼

寫在前面

在座的各位大佬一般都是怎麼查看源碼的呢?應該是說怎麼分析源碼的呢?

1、直接查看在線源碼,如果是隻看某一個文件的話,可以的,方便快捷,打開瀏覽器就可以看。推薦幾個在線鏈接吧。
http://aospxref.com
http://androidxref.com
https://www.androidos.net.cn/sourcecode

2、下載源碼,用SourceInsight等工具,我覺得很麻煩,不知道各位大佬怎麼看。也推薦個下載源碼的博客。
https://blog.csdn.net/qiantujava/article/details/102847414

3、直接在AndroidStudio查看。新建一個Android項目,都會引用到android.jar這個包的,然後AS自動反編譯,可以用最熟悉的工具跳來跳去看,爽歪歪。但是這個包是閹割過的,只有非常少量的源碼。但是如果你SDK有下載到sources,雙擊shift鍵搜索file,可以直接打開sources裏面的源碼,也是很方便的。這個方法有個超誘惑的點,就是可以直接斷點調試。

4、上面說android.jar是閹割過的,所以如果搞個完整的android.jar替換掉不就可以了麼,完整android.jar傳送門:https://github.com/anggrayudi/android-hidden-api,選擇你要的版本下載,然後替換掉本地SDK中對應的版本的android.jar文件即可。親測看源碼可行,但是正常的項目編譯不了了,,,

5、新建JAVA項目,把source裏的源碼複製到項目裏面,用IDEA打開。這麼多方法中,我覺得這個是響應最快的,不用雙擊shift搜索file了,也沒有那麼多紅線了,基本上就是一個完整的項目。痛點就是不能調試,只能查看、分析。此文就是介紹這個方法,估計全網只有我醬紫看源碼吧。

下載IDEA

官網鏈接:http://www.jetbrains.com/idea/
官網有點慢,自己汁生。
點擊DOWNLOAD後可以選在下載試用版或者社區版,社區版是免費的。

新建JAVA項目

打開新建項目對話框,如下:
插一句,AndroidStudio也支持Kotlin DSL build script了,就是用kotlin寫build.gradle,不用groovy了,我試了一下,爽到爆,各種語法都看的懂了,也可以直接點擊到源碼。但是支持還不夠完美,有些功能還沒有。以後會是個趨勢吧。

下一步,寫好GroupIdArtifactId,你只是看下源碼而已,所以隨便填。
再下一步,項目名,路徑等等,隨便填。
然後就建好項目了,可以直接運行main方法了。

把源碼複製到項目中

這裏說的源碼是SDK中下載的源碼,我看的是API28的,路徑爲D:\android-sdk\sources\android-28中,把裏面的代碼全部複製到剛纔創建的項目中即可,我項目名爲Api28,路徑爲:Api28\src\main\java

效果

如下圖,各個方法隨便跳。

寫在最後

一個好的工具,和一個好的方法,真的會事半功倍。這大概就是磨刀不誤砍柴工,砍柴一世一隻弓。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章