android项目 添加

来源:互联网 发布:php类外调用私有属性 编辑:程序博客网 时间:2024/05/01 12:14
vendor的英文单词有“提供商”的意思,在Google的Android原始代码里vendor目录包含了CPU硬件提供商的一些信息。

Android系统作为开放的手持设备操作系统,在发布之初必须要提供配置接口给CPU提供商,这样Android的系统才能在不同的CPU上运行。
实际上vendor目录就是Android系统预留给我们加入定制化信息的目录。在这个目录中可以完成对系统默认应用程序的添加移除、及其背光,GPS和OpenGL硬件适应层的vendor库文件或者代码。

 

加入自己的vendor目录

 

参考sample和htc dream建立rickleaf作为一个新的cpu厂商,在rickleaf建立一个heaven的目录作为厂商的一个特别设备


 

Android 的 编译 系统

 

在Android的platform代码中,如果你的代码需要编译或者 一些二进制文件和库需要复制到目标板,就必须有个Android.mk文件来管理。
Vendor里面的Android.mk文件主要负责编译CPU厂商的特定代码和复制文件到目标板,
 一般 项目中的Android.mk文件内容如下:


BoardConfig.mk

这个文件负责对Android系统的一些配置,包括如下等
ARM CPU的版本
Audio的架构类型
GPS的适应层名字
是否vendor有自己的init.rc文件
Android的image类型(inand需要yaffs2的image,mmc需要ext3或者ext4(android2.3)的image
如果在platform中加入了自己的模块,也可以加入配置机制,并且在这个文件中决定是否加入到系统中来


AndroidProducts.mk


这个文件为 PRODUCT_MAKEFILES 指定一个mk文件
在指定的mk文件中完成对Android系统中APP层面的一些配置,下面简单列举:
添加默认的Android应用程序
采用哪种dpi
采用哪种图资
为Android添加vendor的信息
加入默认铃声


 

PRODUCT_PROPERTY_OVERRIDES
修改一些默认的property设置,关于什么是property请大家去浏览google的文档,可以粗略的理解为类似注册表的东西驻留在内存中,可以供应用程序读写

 

PRODUCT_PACKAGES
PRODUCT_COPY_FILES
Android通过以上两个变量来对android packages和一些系统文件进行添加和移除

 

PRODUCT_LOCALES
这个变有两个作用:一个是加入系统支持的语言类型;另一个是决定默认用哪一种图资,比如ldpi,mdpi还是hdpi

 

PRODUCT_BRAND
厂商名字
PRODUCT_NAME
产品名字
PRODUCT_DEVICE
设备名字



原创粉丝点击