Android Studio 關(guān)聯(lián)Android O源碼

@Deprecated
Android O SDK最新版源碼已發(fā)布,請(qǐng)通過SDK manager更新

眾所周知,Android O(API 26) SDK已經(jīng)發(fā)布,但是根據(jù)情況,也會(huì)打包發(fā)布sdk source,完整的源代碼 https://android.googlesource.com

不知道大家有沒有發(fā)現(xiàn)把項(xiàng)目編譯升級(jí)到8.0后不能跳轉(zhuǎn)查看sdk源碼了,比如android.view.View

我們開發(fā)時(shí)一般只需要關(guān)聯(lián)android包下面的源碼,可以通過Android Studio直接跳轉(zhuǎn)查看,只需要在sdk manager 中勾選Sources for Android xx 下載即可。

但是截至2017-09-22 Android 8.0下面沒有Sources for Android 26的選項(xiàng),無法下載sdk源碼!

已下載的sdk源碼在 sdk/sources目錄可以找到

發(fā)現(xiàn)android-25/android 下面就是對(duì)應(yīng)的
https://android.googlesource.com/platform/frameworks/base/+/android-8.0.0_r12/core/java/android/ 中的文件,所有我們可以試試復(fù)制 platform/frameworks/base/core/java/android 中的代碼到android-26目錄。

如果有完整android source的可以直接復(fù)制,如果沒有可以去clone一份復(fù)制,但是這個(gè)庫也是很大的,需要耐心下載。

不知道git能不能在初次使用時(shí)只clone部分文件夾

這里介紹一個(gè)簡(jiǎn)單的方法只下載core/java/android 中的文件!
https://android.googlesource.com/platform/frameworks/base 對(duì)應(yīng)https://github.com/aosp-mirror/platform_frameworks_base/
整個(gè)repo很大,但是我們只需要下載部分,這里要用到github 的svn功能,github 上每個(gè)repo都可以用svn checkout ! 而svn可以單獨(dú)下載部分文件夾的,

svn ls https://github.com/aosp-mirror/platform_frameworks_base
svn ls https://github.com/aosp-mirror/platform_frameworks_base/branches

找到路徑,直接下載

svn export  https://github.com/aosp-mirror/platform_frameworks_base/branches/oreo-release/core/java/android
  1. 最后在sdk/sources目錄新建android-26,并將下載的android目錄移動(dòng)到android-26目錄
  2. 復(fù)制android-25/package.xmlandroid-25/source.properties 復(fù)制到android-26 目錄
  3. 修改上一步復(fù)制的兩個(gè)文件,將所有25改成26

最后改完效果是這樣的,注意source.properties中AndroidVersion.ApiLevel也要改成26

完成,重啟一下Android Studio,看到Sources for Android 26出來了,同時(shí)sdk中的類也可以正常跳轉(zhuǎn)了!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容