androidstudio导入系统源码,附可导入源码工程-And

2022-03-14  本文已影响0人  Ray206

step.1 准备一台ubuntu(版本:18 04.6)系统的机子,或者虚拟机。

step.2 下载源码,推荐国内的镜像站

清华大学镜像站

sudo apt-get update
mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
wget -c https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-latest.tar # 下载初始化包
tar xf aosp-latest.tar
cd AOSP   # 解压得到的 AOSP 工程目录
# 这时 ls 的话什么也看不到,因为只有一个隐藏的 .repo 目录
repo sync # 正常同步一遍即可得到完整目录
# 或 repo sync -l 仅checkout代码

step.3 安装所需的软件包

sudo apt-get install git-core gnupg flex bison build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxml2-utils xsltproc unzip fontconfig
sudo apt-get install openjdk-8-jdk

可能遇上编译时jdk版本问题,需要多个jdk切换

#创建目录
sudo mkdir /usr/lib/jvm
#解压下载好的jdk
sudo tar -zxvf jdk.gz -C /usr/lib/jvm
#修改环境变量
vim ~/.bashrc
#文件追加
export JAVA_HOME=/usr/lib/jvm/jdk目录  ## 这里要注意目录要换成自己解压的jdk 目录
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export PATH=${JAVA_HOME}/bin:$PATH  
#环境变量生效
source ~/.bashrc
#向系统注册
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk目录/bin/java 300
#查看切换jdk
sudo update-alternatives --config java

step.4 编译

进入根目录

#设置环境,每次repo sync后都应该执行下面命令
source build/envsetup.sh
# 编译
mmm development/tools/idegen/
#生成配置文件(android.iml 和 android.ipr)
development/tools/idegen/idegen.sh
#一下步骤为过滤一些非必要模块,全部导入会非常慢
#只要了frameworks 和 packages 这两个模块
#切换到 源码更目录
vim android.iml
#在excludeFolder后面追加
<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$/docs" />
<excludeFolder url="file://$MODULE_DIR$/external" />
<excludeFolder url="file://$MODULE_DIR$/hardware" />
<excludeFolder url="file://$MODULE_DIR$/kernel" />
<excludeFolder url="file://$MODULE_DIR$/libcore" />
<excludeFolder url="file://$MODULE_DIR$/libnativehelper" />
<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$/test" />
<excludeFolder url="file://$MODULE_DIR$/toolchain" />
<excludeFolder url="file://$MODULE_DIR$/tools" />
<excludeFolder url="file://$MODULE_DIR$/.repo" />

setp.5 导入androidStudio

用android studio直接打开android.ipr就可以了

已编译源码工程分享

链接:https://pan.baidu.com/s/1nzcyBePP-HtwoCkV8bX-Pw 
提取码:q5cz
上一篇下一篇

猜你喜欢

热点阅读