1、集成靜態庫
2、集成動態庫
3、集成可執行程序
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是比較方便。