制作自己的android vendor


1. 下载android源码,并将vendor下面的sample目录复制一份,改名为mmoid
2. 修改products目录下的AndroidProducts.mk文件,改为RODUCT_MAKEFILES := \
$(LOCAL_DIR)/mmoid_addon.mk保存
3. 修改sample_addon.mk文件为mmoid_addon.mk

4.mmoid_addon.mk文件中的
PRODUCT_PACKAGES := \
PlatformLibraryClient \         =》对应于apps下的client文件夹里的内容
com.example.android.platform_library \ =》frameworks下的PlatformLibrary文件夹
libplatform_library_jni =》frameworks下的PlatformLibrary下的jni文件夹

5.修改PlatfromLibrary下的android.mk文件,将
32 33行改为
# This is the target being built.
LOCAL_MODULE:= com.mmoid.android.platform_library
44行改为LOCAL_DROIDDOC_OPTIONS := com.mmoid.android.platform_library

6 修改mmoid_addon.mk文件将第四行改为com.mmoid.android.platform_library \
8、9行改为PRODUCT_COPY_FILES := \


vendor/mmoid/frameworks/PlatformLibrary/com.mmoid.android.platform_library.xml:system/etc/permissions/com.mmoid.and

roid.platform_library.xml

7 将com.example.android.platform_library.xml修改为。。。mmoid。。。。打开里面的内容,将之修改为
<?xml version="1.0" encoding="utf-8"?>
<permissions>
<library name="com.mmoid.android.platform_library"
file="/system/framework/com.mmoid.android.platform_library.jar"/>
</permissions>

8. 注意这里生成的.jar的文件,不包含manifest和资源信息,custom的这些东西需要放在frameworks/base/res下,详细信息 参考

mmoid/frameworks/PlatformLibrary/readme.txt

19:27 2010/4/21
9. 修改mmoid/frameworks/PlatformLibrary/java/com/mmoid/android /platform_library下的PlatformLibrary.java中第一行为

package com.mmoid.android.platform_library;

10 修改mmoid/apps/client下的AndroidManifest.xml里的内容,将其中的example替换为mmoid,此处的xml文 件指定了生成的apk文

件所需要一来的库,已将生成的package名字。

11. vendor/mmoid/apps/client android.mk 35行,改LOCAL_JAVA_LIBRARIES := com.example.android.platform_library。

12 vendor/mmoid/apps/client/src/com/mmoid/android/platform_library/client Client.java
package com.mmoid.android.platform_library.client;

import com.mmoid.android.platform_library.PlatformLibrary;

雪夜刀手:转载请注明http://hi.baidu.com/snownight

vendor目录的内容是针对不同的平台做的移植,还有,如果bionic用到的 kernel头文件,需要用update.py更新,具体做法可以参考文档(...\platform\bionic \libc\kernel\README.TXT)
另外...\platform\build\core\combo\linux-arm.mk 这个makefile里包含了编译器,ARM指令集的些设置

编译android的platform之前,请运行 ...\platform\build\envsetup.sh

大家可以在..\platform\vendor目录看到 htc,asus,qcom这些目录,说明platform部分移植移植到这些平台。

如果要编译针对htc之dream-open平台的android,需要如下的操作(假设当前目录为android源码根目录):
复制 build/buildspec.mk.default 为 buildspec.mk(放在android源码的根目录)
在 buildspec.mk 中文件前面加入(注意zImage是你移植好的 kernel/arch/arm/boot/zImage)
TARGET_PRODUCT := htc_dream
TARGET_PREBUILD_KERNEL := ~/workspace/android/vendor/htc/dream-open/zImage

转自:http://hi.baidu.com/xxw8393/blog/item/dfb302ed9720364278f055fe.html

你可能感兴趣的:(制作自己的android vendor)