Ubantu16.04进行Android 8.0源码编译的流程

 更新时间:2018年02月05日 08:43:19   作者:骑猪去流浪  
这篇文章主要介绍了Ubantu16.04进行Android 8.0源码编译的相关资料,需要的朋友可以参考下

分为4个流程

  1. 源码下载
  2. 构建编译环境
  3. 编译源码
  4. 运行

源码下载

安装git并且配置

//安装git
sudo apt-get install git

//配置git名称和邮箱
git config --global user.name "your name"
git config --global user.email XXX@XXX.com

创建repo的bin目录和源码目录

1.创建repo的bin目录

midir ~/bin

2.创建源码目录

midir ~/source

安装repo

由于在采用网上常见的安装repo方法时,出现了Cannot get http://gerrit.googlesource.com/git-repo/clone.bundle异常,通过网上搜索,原因是repo需要更新自身项目时,连接不上项目本身的git仓库,在此,采取了手动拉取repo最新项目的方式

1.从git上拉取repo项目

git clone https://gerrit-googlesource.lug.ustc.edu.cn/git-repo

2.将git-repo里面的repo文件复制到~/bin目录

3.在~/source目录新建.repo文件夹,把git-repo重命名为repo复制到.repo目录下

4.将~/bin/repo 添加到环境变量,并赋予权限

//赋予权限
chmod a+x ~/bin/repo
//添加到环境变量
将export REPO=~/bin 添加到~/.bash_profile
///让配置文件生效
source ~/.bash_profile

下载源码

初始化仓库

cd到~/source目录,执行以下命令

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest

或者这个命令

repo init -u git://aosp.tuna.tsinghua.edu.cn/aosp/platform/manifest

两者实现的效果一致,仅仅只是协议不同.

如果执行该命令的过程中,如果提示无法连接到 gerrit.googlesource.com,那么我们只需要编辑 ~/bin/repo文件,找到REPO_URL这一行,然后将其内容修改为:

REPO_URL = 'https://gerrit-google.tuna.tsinghua.edu.cn/git-repo'

然后重新执行上述命令即可.

补充说明

不带参数的manifest命令用于获取master上最新的代码,但是可以通过-b参数指定获取某个特定的android版本,比如我们想要获取android-4.0.1_r1分支,那么命令如下:

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-4.0.1_r1
(AOSP项目当前所有的分支列表参看:分支列表)

同步代码

命令如下

repo sync

总结

以上所述是小编给大家介绍的Ubantu16.04进行Android 8.0源码编译的流程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Kotlin lambda表达式入门指南

    Kotlin lambda表达式入门指南

    在kotlin当中,Lambda表达式是最高等级的,Lambda表达式可以理解为一种匿名函数,是一种高效的类似于函数式编程的表达式,本文介绍Kotlin lambda表达式入门指南,感兴趣的朋友一起看看吧
    2024-03-03
  • Android Jni的简单使用详解

    Android Jni的简单使用详解

    这篇文章主要介绍了Android Jni的简单使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • Android图片占用内存全面分析

    Android图片占用内存全面分析

    这篇文章主要介绍了Android图片占用内存全面分析,需要的朋友可以参考下
    2014-03-03
  • Android Flutter表格组件Table的使用详解

    Android Flutter表格组件Table的使用详解

    Table组件不同于其它Flex布局,它是直接继承的RenderObjectWidget的。本篇文章主要介绍如何在页面中使用表格做一个记录,感兴趣的可以尝试一下
    2022-06-06
  • Android自定义流式布局/自动换行布局实例

    Android自定义流式布局/自动换行布局实例

    这篇文章主要介绍了Android自定义流式布局/自动换行布局实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • android里TextView加下划线的几种方法总结

    android里TextView加下划线的几种方法总结

    下面小编就为大家带来一篇android里TextView加下划线的几种方法总结。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • 详解Android的内存优化--LruCache

    详解Android的内存优化--LruCache

    LruCache是基于Lru算法实现的一种缓存机制。本文对LruCache的概念和实现原理进行介绍,通过实例分析和使用介绍,让大家更好的了解LruCache,下面跟着小编一起来看下吧
    2016-12-12
  • Android OKHttp框架的分发器与拦截器源码刨析

    Android OKHttp框架的分发器与拦截器源码刨析

    okhttp是一个第三方类库,用于android中请求网络。这是一个开源项目,是安卓端最火热的轻量级框架,由移动支付Square公司贡献(该公司还贡献了Picasso和LeakCanary) 。用于替代HttpUrlConnection和Apache HttpClient
    2022-11-11
  • android获取监听SD Card状态的方法

    android获取监听SD Card状态的方法

    这篇文章主要介绍了android获取监听SD Card状态的方法,涉及Android实现SD Card监听的技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • Android实现完整游戏循环的方法

    Android实现完整游戏循环的方法

    这篇文章主要介绍了Android实现完整游戏循环的方法,以实例代码形式较为详细的分析了Android游戏循环的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-10-10

最新评论