以下内置方法是基于mtk平台预制资源的学习,参考了各种文档总结的。
内置apk资源的分类:
以下以内置一个flashlight.apk为例。
一:内置不可以卸载apk
1 .1:内置有源码的apk
1) 在 trunk/packages/apps路径创建一个新文件夹flashlight
2) 把flashlight.apk源代码的bin ,gen文件删掉,再把源码拷贝到flashlight 文件夹下
3) 在flashlight 文件夹下创建一个 Android.mk的文件,把下面内容拷贝到Android.mk文件里面:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(call all-java-files-under, src)
LOCAL_PACKAGE_NAME := FlashLight
LOCAL_CERTIFICATE := platform
include $(BUILD_PACKAGE)
要注意LOCAL_PACKAGE_NAME必须是唯一的,如果已经有FlashLight了则必须重新命名。
4) 打开文件 device\mediatek\common\device.mk将 FlashLight 添加到 PRODUCT_PACKAGES 里面。
PRODUCT_PACKAGES += FlashLight
可以用一个宏来控制
ifeq (yes, $(strip $(MY_FLASHLIGHT_APP)))
PRODUCT_PACKAGES += FlashLight
endif
如果哪个项目需要则在对应的Project.mk配置文件打开:MY_FLASHLIGHT_APP= yes
5) 重新 build 整个工程
1.2:内置无源码的apk
1) 在 packages/apps 下面以需要预置的 APK 名字创建文件夹,以预置一个名为Flashlight的APK为例
2) 将