有了 AOSP 源码,接下来就是如何看了,可以直接文本看,可以用 Source Insight,我当然选择 Android Studio,Android Studio 是我熟悉且十分强大的工具。问题来了,如何将 AOSP 源码导入 Android Studio?
安装 Java
虚拟机新装的 Ubutun 一开始是没有 Java 的,需要先安装,输入命令java
,报以下错误:
输入以上命令进行安装,然后整编(关于整编和单编下节细讲)代码又报错:
提示 Java 版本只能是 1.8.x,需要指定 Java 版本:
输出:
拓展
JDK 也有门派之分的,那就是 Open JDK 和 Oacle JDK,其实我刚开编译时,用的是 Oracle JDK,整编报错:
idegen.jar
在 Ubuntu 系统下,进入源码根目录,运行如下命令:
报错:
命令安装 make 成功后,再次运行mmm development/tools/idegen/
,会在源码目录下的 out/host/linux-x86/framework
目录下生成了 idegen.jar 文件。
如果命令 mmm development/tools/idegen/
一直报错,可以尝试一下命令 make idegen
依赖编译下。
android.iml 和 android.ipr
在源码目录下继续执行如下命令:
会在根目录下生成
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。
系列博客
参考
https://blog.csdn.net/HQZ820844012/article/details/80461196
https://www.jianshu.com/p/fb16fa459acf
https://blog.csdn.net/shisanmei911/article/details/79761569