编译不同类型Android程序时,Android.mk文件的定义
2014-03-07 12:50
447 查看
一、编译普通的APK程序Android.mk 定义 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程序Android.mk 定义 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文件名。 LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := xsocket:lib/xSocket-2.8.14.jar \ jackson-mapper:lib/jackson-mapper-asl-1.6.2.jar \ logging:lib/commons-logging.jar \ jackson-core:lib/jackson-core-asl-1.6.2.jar \ javatar:lib/javatar-2.5.jar \ log4j:lib/log4j-1.2.15.jar xsocket jackson-mapper logging jackson-core javatar log4j这几个只是名字,可以随便取。LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES后面才是真正其作用的地方。如: xsocket:lib/xSocket-2.8.14.jar 引用的是lib目录中的xSocket-2.8.14.jar。 还要注意的是 := 不要写成了 += 三、编译使用platform key签名的APK程序Android.mk 定义 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程序Android.mk 定义 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文件)的APK程序Android.mk 定义 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程序Android.mk 定义 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库(.jar 文件)的Android.mk 定义 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文件名。 |
相关文章推荐
- Android.mk编译出不同的文件
- android系统源码根据不同的配置文件编译生成不同的系统
- android编译系统的makefile文件Android.mk写法
- android编译系统的makefile文件Android.mk写法
- android7.1编译第三方apk到系统中的android.mk学习 基于packages/apps/Browser/Android.mk文件内容,如下: LOCAL_PATH := $(my-d
- Cocos移植到Android-Android.mk编译文件
- Duilib Demo 编译报错:(error C2371: “IDispatchEx”: 重定义;不同的基类型)
- Android.mk编译带c++ stl的程序
- cocos2d-x编译android 自动添加文件到android.mk文件
- android编译系统的makefile文件Android.mk写法
- android编译系统的makefile文件Android.mk写法
- 四、Android.mk之编译生成可执行文件
- 编译android内核和文件系统,已经安装jdk,提示build/core/config.mk:268: *** Error: could not find jdk tools.jar
- cocos2d-x避免手动修改android.mk文件来编译
- QT 编译遇到重定义;不同的基类型&在QT中使用C++ lib库
- c++ 自己创建的namespace,声明在h文件中,定义在cpp文件中,这种程序结构应该是合理的吧,欢迎不同见解的朋友来讨论。
- android不同类型文件
- android编译系统解析,执行make bootimage后mk文件的调用顺序详解
- 【Android.mk】android编译系统makefile文件Android.mk的写法
- android编译系统的makefile文件Android.mk写法