Android系统编译-AOSP-创建自己公司的产品
Android系统编译-AOSP-创建自己公司的产品
前面我们已经了解了怎么样去下载源码,怎么样去编译
但是呢,编译的都是别人的产品
比如说
这个列表里,是7.1默认的设备列表
假设你公司有自己的产品呢?你不可能用这些现有的去改吧!
得整一个属于自己的设备,属于自己的产品吧!
前面相关的文章
Android系统编译说明(AOSP) (opens new window)
AOSP-Android系统定制下载系统源码 (opens new window)
使用虚拟机VM,Ubuntu 18.04.2 LTS编译android系统7.1遇到的问题 (opens new window)
# 如何创建自己的产品?
我们前面source envsetup.sh的时候就看到了这样的输出
有一个特点,都在device目录下
其他的不认识没关系,那华为,摩托罗拉,htc这些你认识吧
所以第一步!
# 创建自己公司的文件夹
我们在device下面可以看到有huawei,有htc,这些其实就是公司的文件夹
假如你的公司是腾讯,那么你创建一个tencent文件夹,如果你是微软,来一个microsoft
那我这里来一个sunofbeach
你一家公司是不是有很多产品呀,比如说你华为吧,有p10,有p20,有荣耀,有xxx
所以我们在公司文件夹下创建产品文件夹
# 创建产品文件夹
假设我们生产电视,又生产手机,或者手机某个系列,电视某个系列,手表某个系列之类的
这两个文件夹是空的,那么里面的内容怎么写呢?
一般不写!我们可以去复制别人的呀,改不就行了吗?
照着葫芦画瓢。
# 复制其他产品的内容
我们可以去看看其他公司的产品,里面有什么内容
你看华为就很多是吧,这里截图还没截完呢
它其实包含了很多东西,很多跟硬件相关,为什么呢?因为他们是自己的硬件呀。所以HAL层的自己做一套。
补张图吧
那我们用哪个呢?
重点
如果你是MTK的方案,那么mtk给的源里,就有mtk系列的内容,不需要修改太多
只要改公司名称,设备名称,logo,开机动画之类的就好。
这里面我就复制一份x86的来修改吧!
# 修改配置文件
如果MTK的方案,或者说是睿诚呀,君正,高通这些方案
直接复制一份就好
不用修改太多
修改哪些内容呢?
- AndroidProducts.mk
不用关注文件,文件之前可能有引用跳转到其他文件,关注key值就好。
知道对应的是什么内容。
如果是MTK的方案,有这些选项
根据需求去修改即可。
后面我们定制开机动画呀,控制要编译的app的时候再详细去配置。
# 添加一个vendorsetup.sh
最好不要在windows下创建,要不你可能得修改编码
可以复制一份
比如说我这里修改成这个
add_lunch_combo sob-phone-x86-userdebug
不需要往build/envsetup.sh中添加,因为里面是动态遍历的
可以看到,我们新添加的产品就有了
后面我们再进一步去定制这个项目,比如说修改开机logo,添加我们的app,修改一些UI,系统关于里显示的内容等等...