从零开始自定义安卓系统(6) 自定义模块 添加系统app
从零开始自定义安卓系统(6) 自定义模块 添加系统app
前言
在之前就知道可以通过PRODUCT_PACKAGES
添加自己的包, 具体操作是 新建一个模块,然后
|
|
要定义一个模块 可以使用soong
或者makefile
, 在新版本系统推荐使用soong
soong
使用 .bp
文件定义模块 参考
从官方例子就可以看到其实格式和json一样简单,
|
|
主要问题是找到需要的模块和属性 这个时候就需要格式参考
里面主要根据语言分类, 想做一件事的时候查询对应类型,和对应模块名的格式参考
添加预下载apk
查看android/soong/java
类型 看名字就知道 前面两个就是.
android_app
和android_app_import
查阅文档克制区别在于 前者是需要编译的模块 后者是直接导入apk文件
文档提供了一个例子
|
|
文档里还提供5行的其他选项, 不过基本都是通用选项, 与app
有关的不多 , 看旁边注释就能了解作用
如果要导入一个叫vnc.apk
的文件
新建一个目录,放入apk文件,和Android.bp
|
|
然后在bluebird.mk
(产品mk文件)添加
|
|
然后编译即可在 system/app
看到 vnc_import
目录
如果遇到 mismatch in the <uses-library> tags between the build system and the manifest:
则按提示在 产品文件添加
|
|
或在bp文件添加提示中对应的lib
|
|