Android Studio 导入 AOSP 源码
有了 AOSP 源碼,接下來就是如何看了,可以直接文本看,可以用 Source Insight,我當然選擇 Android Studio,Android Studio 是我熟悉且十分強大的工具。問題來了,如何將 AOSP 源碼導入 Android Studio?
安裝 Java
虛擬機新裝的 Ubutun 一開始是沒有 Java 的,需要先安裝,輸入命令java,報以下錯誤:
<!--more-->
輸入以上命令進行安裝,然后整編(關于整編和單編下節細講)代碼又報錯:
Your version is: openjdk version "10.0.1" 2018-04-17 OpenJDK Runtime Environment (build 10.0.1+10-Ubuntu-3ubuntu1) OpenJDK 64-Bit Server VM (build 10.0.1+10-Ubuntu-3ubuntu1, mixed mode). The required version is: "1.8.x"提示 Java 版本只能是 1.8.x,需要指定 Java 版本:
sudo update-alternatives --config java輸出:
有 2 個候選項可用于替換 java (提供 /usr/bin/java)。選擇 路徑 優先級 狀態 ------------------------------------------------------------ * 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 自動模式 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 手動模式 2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 手動模式要維持當前值[*]請按<回車鍵>,或者鍵入選擇的編號:2拓展
JDK 也有門派之分的,那就是 Open JDK 和 Oacle JDK,其實我剛開編譯時,用的是 Oracle JDK,整編報錯:
You asked for an OpenJDK based build but your version is java version "1.8.0_181" Java(TM) SE Runtime Environment (build 1.8.0_181-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode).idegen.jar
在 Ubuntu 系統下,進入源碼根目錄,運行如下命令:
source build/envsetup.sh mmm development/tools/idegen/報錯:
Command 'make' not found, but can be installed with:sudo apt install make sudo apt install make-guile命令安裝 make 成功后,再次運行mmm development/tools/idegen/,會在源碼目錄下的 out/host/linux-x86/framework目錄下生成了 idegen.jar 文件。
如果命令 mmm development/tools/idegen/ 一直報錯,可以嘗試一下命令 make idegen 依賴編譯下。
android.iml 和 android.ipr
在源碼目錄下繼續執行如下命令:
development/tools/idegen/idegen.sh會在根目錄下生成
android.iml 和 android.ipr 這兩個文件,這兩個文件是 Android Studio 的工程配置文件,這時候其實已經可以直接導入 Android Studio,但會導入所有的源碼模塊,會很慢,可以進行過濾,除了 frameworks 模塊和 packages 模塊,其他都給過濾掉,不導入 Android Studio,打開 android.iml 文件,搜下excludeFolder,在后面加入如下代碼:
導入 Android Studio
我把 Android 源碼拷到我的 Mac 上,打開 Android Studio,選擇 Open an existing Android Studio project,找到源碼目錄,點擊 Android.ipr,Open,大約等 6 分鐘,導入完畢,Enjoy coding。
問題
發現 Android Studio 不停 scanning files to index,我的強迫癥又犯了,解決:
1 invalidate and restart 不起作用;
2 右擊項目 --> Open module setting --> Modules --> 找到 gen 文件夾 --> 右鍵選擇 Resources,終于告別煩人的 scanning files to index。
系列博客
VirtualBox 安裝 Ubuntu
AOSP 源碼下載
AOSP 源碼整編單編
參考
https://blog.csdn.net/HQZ8208...
https://www.jianshu.com/p/fb1...
https://blog.csdn.net/shisanm...
公眾號
我的公眾號:吳小龍同學,歡迎關注交流~
總結
以上是生活随笔為你收集整理的Android Studio 导入 AOSP 源码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数组-join
- 下一篇: 深入浅出JProfiler