Android核心服务解析篇(一)——下载Android源代码

简介: Android核心服务解析篇(一)——下载Android源代码

在文字,语音,图像来说,人记住的最好或者是最多的往往是图像。对于想了解Android核心服务的程序员来说,下载Android源码来了解核心服务是最快,也是最好的方法。下面我们就从安装Android源码开头来了解Android核心服务。


1.在Linux系统中获取Android源码


⑴下载repo


在用户目录下,创建bin文件夹,用于存放repo,并把该路径设置到环境变量中去,命令如下:

$ mkdir ~/bin
$ PATH=~/bin:$PATH


下载repo的脚本,用于执行repo,命令如下:


$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo


设置可执行权限,命令如下:


$ chmod a+x ~/bin/repo


㈡初始化一个repo的客户端


在用户目录下,创建一个空目录,用于存放Android源码,命令如下:


$ mkdir AndroidCode
$ cd AndroidCode


进入到AndroidCode目录,并运行repo来下载源码,下载主线分支的代码,主线分支包括最新修改,以及并未正式发出版本的最新源码,命令如下:


$ repo init -u https://android.googlesource.com/platform/manifest

下载其他分支,即正式发布的版本,可以通过添加-b参数来下载,命令如下:


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


这里以下载4.3源码为例。 在下载过程中会需要填写Name和E-mail,填写完毕之后,选择Y进行确认,最后提示repo初始化完成,这时可以开始同步Android源码了,同步过程很漫长,需要耐心等待,执行下面的命令开始同步代码:


$ repo sync


经过上述步骤后,便开始下载并同步Android源码了,界面效果如下图所示:


8.png


2.在Windows平台上获取Android源码


Windows平台上获取源码与Linux上面的原理相同,但是需要预先在Windows平台上搭建一个Linux环境,此处需要用到Cygwin工具。Cygwin的作用是构建一套在Windows上的Linux模拟环境。下载Cygwin工具的地址如下:


http://cygwin.com/install.html


下载成功后,会得到一个名为“Setup.exe”的可执行文件,通过此文件,可以更新和下载最新的工具版本,具体流程请参考如下网址:


http://jingyan.baidu.com/article/6b97984d83dfe51ca2b0bf0e.html


在下图中我们需要安装如下工具(curl,git,python):


9.png

在Search里面输入这些工具,然后将ALL&default改成ALL&Install就可以了。


下载Cygwin后就可以打开执行如1,Linux安装源码过程。


3.执行命令的Cygwin全部截图


10.png

11.png

12.png


相关文章
|
3天前
|
Android开发
Android 11 添加Service服务SELinux问题
Android 11 添加Service服务SELinux问题
10 1
|
13天前
|
监控 负载均衡 Cloud Native
ZooKeeper分布式协调服务详解:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入剖析ZooKeeper分布式协调服务原理,涵盖核心概念如Server、Client、ZNode、ACL、Watcher,以及ZAB协议在一致性、会话管理、Leader选举中的作用。讨论ZooKeeper数据模型、操作、会话管理、集群部署与管理、性能调优和监控。同时,文章探讨了ZooKeeper在分布式锁、队列、服务注册与发现等场景的应用,并在面试方面分析了与其它服务的区别、实战挑战及解决方案。附带Java客户端实现分布式锁的代码示例,助力提升面试表现。
30 2
|
22天前
|
XML Java Android开发
Android实现自定义进度条(源码+解析)
Android实现自定义进度条(源码+解析)
51 1
|
1月前
|
网络协议 Linux
Linux DNS服务详解——DNS主从架构配置
Linux DNS服务详解——DNS主从架构配置
407 4
|
1月前
|
域名解析 缓存 网络协议
Linux DNS服务详解——DNS基础知识
Linux DNS服务详解——DNS基础知识
75 1
|
2天前
|
Android开发
Android源代码定制:Overlay目录定制|调试Overlay资源是否生效
Android源代码定制:Overlay目录定制|调试Overlay资源是否生效
10 0
|
2天前
|
Android开发
Android源代码定制:添加customize.mk文件进行分项目和分客户的定制
Android源代码定制:添加customize.mk文件进行分项目和分客户的定制
2 0
|
2天前
|
存储 开发工具 对象存储
Javaweb之SpringBootWeb案例之阿里云OSS服务入门的详细解析
Javaweb之SpringBootWeb案例之阿里云OSS服务入门的详细解析
10 0
|
1月前
|
域名解析 缓存 网络协议
探索Qt 网络编程:网络地址与服务类全解析
探索Qt 网络编程:网络地址与服务类全解析
55 0
|
1月前
|
Shell 开发工具 Android开发
ADB 下载、安装及使用教程:让你更好地管理 Android 设备
ADB 下载、安装及使用教程:让你更好地管理 Android 设备
508 2

推荐镜像

更多