您的位置:首页 > 移动开发 > Android开发

Android.mk编译生成APK

2013-05-25 09:49 309 查看
编译一个简单的APK

  LOCAL_PATH := $(callmy-dir)
  include $(CLEAR_VARS)
   
  # Build all java files inthe java subdirectory
  LOCAL_SRC_FILES := $(callall-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 := $(callmy-dir)
  include $(CLEAR_VARS)
   
  # List of static librariesto include in the package
 LOCAL_STATIC_JAVA_LIBRARIES := static-library
   
  # Build all java files inthe java subdirectory
  LOCAL_SRC_FILES := $(callall-subdir-java-files)
   
  # Name of the APK to build
  LOCAL_PACKAGE_NAME :=LocalPackage
   
  # Tell it to build an APK
  include $(BUILD_PACKAGE)
 

编译一个需要platformkey签名的APK 

  LOCAL_PATH := $(callmy-dir)
  include $(CLEAR_VARS)
   
  # Build all java files inthe java subdirectory
  LOCAL_SRC_FILES := $(callall-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 := $(callmy-dir)
  include $(CLEAR_VARS)
   
  # Build all java files inthe java subdirectory
  LOCAL_SRC_FILES := $(callall-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 := $(callmy-dir)
  include $(CLEAR_VARS)
   
  # Module name should matchapk 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 := $(callmy-dir)
  include $(CLEAR_VARS)
   
  # Build all java files inthe java subdirectory
  LOCAL_SRC_FILES := $(callall-subdir-java-files)
   
  # Any libraries that thislibrary depends on
  LOCAL_JAVA_LIBRARIES :=android.test.runner
   
  # The name of the jar fileto create
  LOCAL_MODULE := sample
   
  # Build a static jar file.
  include$(BUILD_STATIC_JAVA_LIBRARY)
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Android.mk APK