Android Studio 源码导入 - orangetell/Android-aosp-diss GitHub Wiki
Android Studio导入源码比较关键的需要有android.ipr和android.iml这两个文件,
而这两个文件对于不同android版本不一样,且只有在编译后的源码环境下,才能编译生成,不过不用担心
在aosp-for-as这里你可以找到已经准备好的5.0.1到9.0.0所有版本所需的文件
(注:6.0以及6.0以上是使用jdk8进行编译的,5.0和5.1只能使用jdk7)
android.ipr和android.iml生成
1. 源码下载与编译
官方教程:https://source.android.com/setup/build/requirements(建议使用Ubuntu 16.0.4.5 LTS版本)
2. ipr和iml生成
源码根目录执行如下命令即可
source build/envsetup.sh
mmm development/tools/idegen/
# wait for minute
. development/tools/idegen/idegen.sh
# wait for several minute
Android Studio 配置与导入
1. 编辑android.iml文件,去掉一些不需要的代码
将不需要的代码 sourceFolder 改成 excludeFolder,例如:
将<sourceFolder url="file://$MODULE_DIR$/./art/test/004-JniTest/src" isTestSource="true"/>
改为<excludeFolder url="file://$MODULE_DIR$/./art/test/004-JniTest/src" isTestSource="true"/>
下面列了我们不需要的代码:
/test/、/cts/、/out/、/platform_testing/、/prebuilts/(可选)、/external/autotest/、
2. 使用AS打开android.ipr文件,然后耐心等待加载完成(一个小时左右)
3. 配置SDK相关环境变量
打开 Module Settings 会有一个Problems提示
根据提示点击打开,并修改 Project SDK 为 1.8(java version "1.8.0_152-release") (这里我导入的是Android9.0的源码,并且是使用jdk8编译的) ,点击Apply应用即可
(注:6.0以及6.0以上是使用jdk8进行编译的,5.0和5.1只能使用jdk7)
点击 Modules -> Dependencies 确认 Module SDK 为 Project SDK(1.8) ,并删除 Module source 和 1.8(java version "1.8.0_152-release")以外所有的内容