http://blog.csdn.net/andylao62/article/details/50705622
以BT爲例
1. 新建文件夾/home/public/project/android/freescaleandroid5.1/device/fsl-proprietary/prebuilt_app
在prebuilt_app文件夾下新建Android.mk文件如下
LOCAL_PATH := $(call my-dir)
include $(call all-subdir-makefiles)
2. 新建文件夾/home/public/project/android/freescaleandroid5.1/device/fsl-proprietary/prebuilt_app/BT
將BT.apk(見附件)解壓後文件放在BT文件夾下
將BT.apk放入BT文件夾下
在BT文件夾下新建Android.mk文件如下
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := BT
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_MODULE_CLASS := APPS
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_PREBUILT_JNI_LIBS:= \
@lib/armeabi-v7a/libconnectBT.so\
@lib/armeabi-v7a/libgnustl_shared.so\
@lib/armeabi-v7a/libplugins_generic_libqevdevkeyboardplugin.so\
@lib/armeabi-v7a/libplugins_generic_libqevdevmouseplugin.so\
@lib/armeabi-v7a/libplugins_generic_libqevdevtabletplugin.so\
@lib/armeabi-v7a/libplugins_generic_libqevdevtouchplugin.so\
@lib/armeabi-v7a/libplugins_imageformats_libqdds.so\
@lib/armeabi-v7a/libplugins_imageformats_libqgif.so\
@lib/armeabi-v7a/libplugins_imageformats_libqicns.so\
@lib/armeabi-v7a/libplugins_imageformats_libqico.so\
@lib/armeabi-v7a/libplugins_imageformats_libqjpeg.so\
@lib/armeabi-v7a/libplugins_imageformats_libqtga.so\
@lib/armeabi-v7a/libplugins_imageformats_libqtiff.so\
@lib/armeabi-v7a/libplugins_imageformats_libqwbmp.so\
@lib/armeabi-v7a/libplugins_imageformats_libqwebp.so\
@lib/armeabi-v7a/libplugins_platforms_android_libqtforandroid.so\
@lib/armeabi-v7a/libplugins_platforms_libqminimal.so\
@lib/armeabi-v7a/libplugins_platforms_libqminimalegl.so\
@lib/armeabi-v7a/libplugins_platforms_libqoffscreen.so\
@lib/armeabi-v7a/libplugins_sqldrivers_libqsqlite.so\
@lib/armeabi-v7a/libQt5Core.so\
@lib/armeabi-v7a/libQt5Gui.so\
@lib/armeabi-v7a/libQt5Sql.so\
@lib/armeabi-v7a/libQt5Widgets.so\
LOCAL_MODULE_PATH := $(TARGET_OUT)/app
#LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_APPS) #can be uninstall
LOCAL_MODULE_TAGS := optional
include $(BUILD_PREBUILT)
note:
LOCAL_MODULE和LOCAL_PREBUILT_JNI_LIBS:= \需要根據具體的情況做出更改,其他內容可沿用
3. 根據我們需求,按照上述方法創建FM、GaodeMap、QQmusic;
4. 修改/home/public/project/android/freescaleandroid5.1/device/fsl/imx6/imx6.mk
加添如下內容:
#BT FM GaodeMap QQmusic is my prebuilt APK of system
PRODUCT_PACKAGES += \
rtw_fwloader \
BT \
FM \
GaodeMap\
QQmusic
5. 編譯:
cd /home/public/project/android/freescaleandroid5.1/
$ source build/envsetup.sh
$ lunch sabresd_6dq-userdebug
$ make
note:
編譯如果報system.img size 錯誤
例如:
Out of space? the tree size of out/target/product/nitrogen6x/system is (MB):
273 out/target/product/nitrogen6x/system
The max is 360 MB.
make: *** [out/target/product/nitrogen6x/obj/PACKAGING/systemimage_intermediates/system.img] Error 1
解決方法:
修改/home/public/project/android/freescaleandroid5.1/device/fsl/imx6/BoardConfigCommon.mk文件中
BOARD_SYSTEMIMAGE_PARTITION_SIZE參數
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 536870912 #LQY change BOARD_SYSTEMIMAGE_PARTITION_SIZE := 377487360
即把之前的360MB改爲512MB