ubuntu18.04 android8.1源码下载,编译,调试

AOSP:
https://blog.csdn.net/fuchaosz/article/details/52473660


一,使用镜像下载源码
清华镜像:https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/
1.获取repo
mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

2.repo init
问题:/usr/bin/env: python: No such file or directory
解决:sudo apt-get install python-dev
mkdir source
cd source
repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest
如果提示无法连接到 gerrit.googlesource.com,可以编辑 ~/bin/repo,把 REPO_URL 一行替换成:
REPO_URL = 'https://mirrors.tuna.tsinghua.edu.cn/git/git-repo'

如果下载指定版本源码(如android-cts-6.0_r9),用如下命令:

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-cts-6.0_r9

3.同步代码
repo sync


二,编译源码
https://blog.csdn.net/shui1025701856/article/details/80497911
https://source.android.com/setup/initializing#ccache
1.安装依赖库
# apt install openjdk-8-jre-headless
# apt install openjdk-8-jdk-headless
# apt install g++-multilib
# apt install gperf
# apt install libxml2-utils
# apt install curl
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip

2.设置环境变量
./build/envsetup.sh(或者source build/envsetup.sh)

3.选择编译目标
lunch——>会弹出菜单
which would you like?1

4.make -j8

5.运行模拟器
./prebuilts/android-emulator/darwin-x86_64/emulator
$emulator

三,android studio调试源码

1.#初始化命令工具

soruce build/envsetup.sh

2.#编译 idegen 模块,生成idegen.jar

mmm development/tools/idegen/

3.#生成针对 Android 开发工具的配置文件

 ./development/tools/idegen/idegen.sh

如果提示没有权限,用chmod命令修改访问权限。

4.会生成android.iml,android.ipr两个文件。

android.ipr:工程相关的设置,比如编译器配置、入口,相关的libraries等。 android.iml:描述了modules,比如modules的路径,依赖关系等。

5.android Studio——>Open project ——>选择打开android.ipr

这是会生成android.iws,该文件包含了一些个人工作区的设置。

 

注意:

    如果你是第一次导入源码, Android Studio 可能需要占用大量的内存,我们需要设置下我们的 VM 选项。 Linux 设备的话在 Android Studio 的 bin/studio64.vmoptions 文件中添加-Xms748m -Xmx748m。

    在正式开始导入前,我们可以打开 android.iml 文件根据自己需要调整要加载的源码,将不需要的以来modules删除掉。

6.依赖配置

添加external和frameworks依赖

7.配置对应SDK

8.打开ADB调试开关

9.断点调试

 

补充:如何查看源码版本

1,如果是已经编译过的,则会在源码下生成build.prop文件,我们可以通过命令查找文件

find -name build.prop

2,如果未编译过,在源码目录下的build/core/version_defaults.mk文件中也有版本信息

3.或者查看.repo/manifest.xml
  <remote name="aosp" fetch=".." review="https://android-review.googlesource.com/"/>
  <default revision="refs/tags/android-cts-6.0_r9" remote="aosp" sync-j="4"/>

转载于:https://my.oschina.net/kun123/blog/1836238

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值