4、集成pre-build Android应用程序(APK)
如何集成没有源码的apk文件,纯粹的apk呢?
方法一、目录结构vendor/BM/APPs/MobileQQ2011/MobileQQ2011.apk
vendor/BM/APPs/MobileQQ2011/Android.mk
以下是Android.mk:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
# Module name should match apk name to be installed.
LOCAL_MODULE := MobileQQ2011
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
# LOCAL_MODULE_TAGS := user
#add by yue @20110516
#you can choose apk's diff location
# LOCAL_MODULE_PATH := $(TARGET_OUT_APPS)
LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_APPS)
LOCAL_CERTIFICATE := platform
#end
include $(BUILD_PREBUILT)
加进去后,在根目录下执行:make即可,
可以在installed-files.txt中查看是否加入到了对应的img文件中。
弊端是如果加入很多apk,要逐个建立这样的目录结构,也因为有android.mk,会产生相应的临时文件
方法二、纯粹拷贝apk文件
目录结构vendor/BM/APPs/MobileQQ2011.apk
vendor/BM/APPs/Renren_Android_3.0.2.apk
通过android提供的PRODUCT_COPY_FILES这个变量来自动拷贝,只需要给此变量赋值。在任何一个确定加入编译的mk文件中加入(我的是加在msm7627_qrd.mk)
PRODUCT_COPY_FILES += /
vendor/bm/APPS/MobileQQ2011.apk:system/app/MobileQQ2011.apk/
vendor/bm/APPS/Renren_Android_3.0.2.apk:system/app/Renren_Android_3.0.2.apk
这种相对不会很繁琐,不需要一级级的建立目录,在内置很多apk是比较方便。
附加说明: