編譯一個各種的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)


編譯一個需要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)


 

編譯一個需要特殊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)


 

 

第三方APK針對需要.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)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章