天天看點

【摘錄】Android.mk添加第三方jar或so庫到apk

一、編譯一個 簡單的APK     LOCAL_PATH := $(call my-dir)   include $(CLEAR_VARS)   # Build all java files in the java subdirectory   LOCAL_SRC_FILES := $(call all-subdir-java-files)   # Name of the APK to build    LOCAL_PACKAGE_NAME  := LocalPackage   # Tell it to build an APK   include $( BUILD_PACKAGE ) 二、編譯一個 依賴靜态.jar檔案的APK    LOCAL_PATH := $(call my-dir)   include $(CLEAR_VARS)   # List of static libraries to include in the package    LOCAL_STATIC_JAVA_LIBRARIES :=  static-library   # Build all java files in the java subdirectory   LOCAL_SRC_FILES := $(call all-subdir-java-files)   # Name of the APK to build   LOCAL_PACKAGE_NAME := LocalPackage   # Tell it to build an APK    include $( BUILD_PACKAGE)   注: LOCAL_STATIC_JAVA_LIBRARIES 後面應是你的APK程式所需要的JAVA庫的JAR檔案名。 三、編譯一個 需要platform key簽名的APK    LOCAL_PATH := $(call my-dir)   include $(CLEAR_VARS)   # Build all java files in the java subdirectory   LOCAL_SRC_FILES := $(call all-subdir-java-files)   # Name of the APK to build   LOCAL_PACKAGE_NAME := LocalPackage    LOCAL_CERTIFICATE : = platform   # Tell it to build an APK   include $(BUILD_PACKAGE)  注: LOCAL_CERTIFICATE 後面應該是簽名檔案的檔案名 四、編譯一個 需要特殊vendor key簽名的APK    LOCAL_PATH := $(call my-dir)   include $(CLEAR_VARS)   # Build all java files in the java subdirectory   LOCAL_SRC_FILES := $(call all-subdir-java-files)   # Name of the APK to build   LOCAL_PACKAGE_NAME := LocalPackage    LOCAL_CERTIFICATE := vendor/example/certs/app   # Tell it to build an APK   include $(BUILD_PACKAGE) 五、裝載一個 普通的第三方APK   LOCAL_PATH := $(call my-dir)   include $(CLEAR_VARS)   # Module name should match apk name to be installed.   LOCAL_MODULE := LocalModuleName    LOCAL_SRC_FILES := $(LOCAL_MODULE).apk    LOCAL_MODULE_CLASS := APPS    LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)   LOCAL_CERTIFICATE := platform   include $( BUILD_PREBUILT )  六、裝載 需要.so(動态庫)的第三方apk LOCAL_PATH := $(my-dir) include $(CLEAR_VARS) LOCAL_MODULE := baiduinput_android_v1.1_1000e LOCAL_SRC_FILES := $(LOCAL_MODULE).apk LOCAL_MODULE_CLASS := APPS LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX) LOCAL_CERTIFICATE := platform include $( BUILD_PREBUILT )   ################################################################# ####### copy the library to /system/lib ######################### ################################################################# include $(CLEAR_VARS) LOCAL_MODULE := libinputcore.so LOCAL_MODULE_CLASS := SHARED_LIBRARIES LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES) LOCAL_SRC_FILES := lib/$(LOCAL_MODULE) OVERRIDE_BUILD_MODULE_PATH := $(TARGET_OUT_INTERMEDIATE_LIBRARIES) include $( BUILD_PREBUILT ) 七、編譯一個靜态java庫    LOCAL_PATH := $(call my-dir)   include $(CLEAR_VARS)   # Build all java files in the java subdirectory   LOCAL_SRC_FILES := $(call all-subdir-java-files)   # Any libraries that this library depends on    LOCAL_JAVA_LIBRARIES := android.test.runner   # The name of the jar file to create    LOCAL_MODULE := sample   # Build a static jar file.   include $( BUILD_STATIC_JAVA_LIBRARY ) 注: LOCAL_JAVA_LIBRARIES 表示生成的java庫的jar檔案名。

轉載于:https://www.cnblogs.com/IamEasy_Man/archive/2011/11/17/2253350.html