IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> AndroidStudio 加载系统源码流程(一) -> 正文阅读

[移动开发]AndroidStudio 加载系统源码流程(一)

1.Android Studio 开启前配置:

**调整内存大小: ** Android Studio需要大量的内存来加载Android源码,所以经常会遇到内存不足的问题, 需要加大内存.

1.点击Help->?Edit Custom VM Options, 比如 “-Xms4096m -Xmx4096m”

2. 修改android-studio/bin/studio.vmoptions studio64.vmoptions 两个文件的以下属性就可以了

-Xms2048m
-Xmx2048m
-XX:MaxPermSize=2048m
-XX:ReservedCodeCacheSize=1024m

1.2 下载Android系统源码

1.2.1 安装repo

mkdir ~/bin PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

1.2.2 初始化repo

mkdir ~/aosp //创建目录,可自己定义
cd ~/aosp
git config --global user.name "Gityuan" //配置git的用户名
git config --global user.email "gityuan@google.com" //配置git的邮箱

1.2.3 下载原生Android源码

如下第一条是下载master分支代码;如果需要下载某条指定分支,可通过第二条命令,比如指定分支android-7.0.0_r1, 其他分支信息可查看https://source.android.com/source/build-numbers.html#source-code-tags-and-builds.

repo init -u https://android.googlesource.com/platform/manifest
repo init -u https://android.googlesource.com/platform/manifest -b android-7.0.0_r1

初始完成后,可以开始同步代码,其中如下第一条是同步所有可用的project,第二条只同步当前初始化的分支,第三条是只同步frameworks/base库。

repo sync
repo sync -c -j4
repo sync platform/frameworks/base -c -j4

1.2.4 编译Android源码

以build aosp的eng版本为例:(当然build前需要先配置jdk环境)

make clobber    //删除所有先去build所产生的output文件
source build/envsetup.sh    //创建环境变量
lunch aosp_arm-eng          //选择build target
make -j4                    //build源码

二. 搭建源码环境

2.1 生成IDE相关文件

idegen专门为IDE环境调试源码而设计的工具, 依次执行如下命令:

soruce build/envsetup.sh  
mmm development/tools/idegen/  
development/tools/idegen/idegen.sh

以上3个步骤的含义依次如下:

Step 1: 用于初始化环境变量
Step 2: 生成文件out/host/linux-x86/framework/idegen.jar
Step 3: 源码根目录生成文件android.ipr(工程相关设置), android.iml(模块相关配置)

2.2 源码导入Android Studio

打开Android Studio, 点击File?->?Open,选中前面生成的android.ipr文件即可, 该过程较耗时

(a) 加载前配置文件提速:

排除不必要的模块,提高加载速度
打开android.iml, 找到excludeFolder属性,我们可以看到默认有14个模块是被排除了,不会被导入的。整个AOSP代码中,一般情况下,我们只是关心framework模块,因此可以根据自己的需求多去掉一些模块。
比如把下面这些加到上面那14行之下:

<excludeFolder url="file://$MODULE_DIR$/art"/>
<excludeFolder url="file://$MODULE_DIR$/bionic"/>
<excludeFolder url="file://$MODULE_DIR$/bootable"/>
<excludeFolder url="file://$MODULE_DIR$/build"/>
<excludeFolder url="file://$MODULE_DIR$/cts"/>
<excludeFolder url="file://$MODULE_DIR$/dalvik"/>
<excludeFolder url="file://$MODULE_DIR$/developers"/>
<excludeFolder url="file://$MODULE_DIR$/development"/>
<excludeFolder url="file://$MODULE_DIR$/device"/>
<excludeFolder url="file://$MODULE_DIR$/external"/>
<excludeFolder url="file://$MODULE_DIR$/hardware"/>
<excludeFolder url="file://$MODULE_DIR$/libcore"/>
<excludeFolder url="file://$MODULE_DIR$/libnativehelper"/>
<excludeFolder url="file://$MODULE_DIR$/ndk"/>
<excludeFolder url="file://$MODULE_DIR$/out"/>
<excludeFolder url="file://$MODULE_DIR$/pdk"/>
<excludeFolder url="file://$MODULE_DIR$/platform_testing"/>
<excludeFolder url="file://$MODULE_DIR$/prebuilts"/>
<excludeFolder url="file://$MODULE_DIR$/sdk"/>
<excludeFolder url="file://$MODULE_DIR$/system"/>
<excludeFolder url="file://$MODULE_DIR$/tools"/>
<excludeFolder url="file://$MODULE_DIR$/kernel"/>

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-12-02 16:52:58  更:2021-12-02 16:55:17 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 6:29:19-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码