MTK Android.mk解读

预制第三方apk

在vendor/freeme/samples 中的Android.mk-sample中可以看到示例。

# Prebuilt apk
include $(CLEAR_VARS)   //必须先定义LOCAL_PATH 变量,此变量表示源文件的位置。编译系统提供的宏函数 my-dir 将返回当前目录(Android.mk 文件本身所在的目录)的路径。
LOCAL_MODULE                    := Sample  //变量存储要编译的模块的名称。每个模块中使用一次此变量,每个模块名称必须唯一,且不含任何空格
LOCAL_MODULE_TAGS               := optional  //user eng tests optional ;   user: 指该模块只在user版本下才编译    eng: 指该模块只在eng版本下才编译      tests: 指该模块只在tests版本下才编译    optional:指该模块在所有版本下都编译
LOCAL_MODULE_CLASS              := APPS
LOCAL_MODULE_SUFFIX             := $(COMMON_ANDROID_PACKAGE_SUFFIX)   //module的后缀
LOCAL_MODULE_PATH               := $(TARGET_OUT_VENDOR)/operator/app  //apk 安装路径
LOCAL_SRC_FILES                 := $(LOCAL_MODULE).apk   //变量必须包含要编译到模块中的 C 和/或 C++ 源文件列表
#LOCAL_REPLACE_PREBUILT_APK_INSTALLED := $(LOCAL_PATH)/$(LOCAL_MODULE).apk
LOCAL_CERTIFICATE               := PRESIGNED //PRESIGNED 表示apk签名使用原来签名 platform 表示使用系统签名  无特殊情况一般使用PRESIGNED 
LOCAL_PRIVILEGED_MODULE         := true   //决定了其编译后的在ROM中的安装位置: 如果不设置或者设置为false,安装位置为system/app; 如果设置为true,安装位置为system/priv-app。 
LOCAL_PROPRIETARY_MODULE        := true
LOCAL_MULTILIB                  := both  //变量配置32位、64位构建(会覆盖全局的TARGET_PREFER_32_BIT)。其值可选择:

//"both": build both 32-bit and 64-bit.
//"32": build only 32-bit.
//"64": build only 64-bit.
LOCAL_PREBUILT_JNI_LIBS_arm     := $(subst $(LOCAL_PATH)/,,$(wildcard $(LOCAL_PATH)/lib/armeabi/*.so))  
LOCAL_PREBUILT_JNI_LIBS_arm64   := $(subst $(LOCAL_PATH)/,,$(wildcard $(LOCAL_PATH)/lib/arm64-v8a/*.so))
#LOCAL_DEX_PREOPT                := false
LOCAL_REQUIRED_MODULES          := sample.txt sample1.txt sample2.txt
include $(BUILD_PREBUILT)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值