Android.mk 使用 环境 小结
来源:互联网 发布:如何选择导师 知乎 编辑:程序博客网 时间:2024/05/29 17:56
一、将无源码的 APK 和它 依赖的库预置进系统,此apk可以升级
++++++++++++++++++++++++++++++
一、将无源码的 APK 和它 依赖的库预置进系统,此apk可以升级
---------- cut here ------------------LOCAL_PATH := $(call my-dir)#预置aliuyi.apkinclude $(CLEAR_VARS)LOCAL_MODULE := wwwa.apk LOCAL_SRC_FILES := aliuyi.apkLOCAL_MODULE_TAGS := optionalLOCAL_MODULE_CLASS := APPSLOCAL_CERTIFICATE := PRESIGNEDLOCAL_MODULE_PATH := $(TARGET_OUT)/appinclude $(BUILD_PREBUILT)#方法一:预置so等资源文件include $(CLEAR_VARS)LOCAL_MODULE := wanghai.soLOCAL_SRC_FILES := wanghai.soLOCAL_MODULE_TAGS := optionalLOCAL_MODULE_CLASS := SHARED_LIBRARIESLOCAL_MODULE_PATH := $(TARGET_OUT)/lib/include $(BUILD_PREBUILT)#方法二:预置so等资源文件include $(CLEAR_VARS)LOCAL_MODULE_TAGS := optionalLOCAL_PREBUILT_LIBS := sdfapk.so sdffff.soinclude $(BUILD_MULTI_PREBUILT)
#方法三:预置so等资源文件,在Android.mk里 添加 这样一句,注意:这样的方式 如果路径不存在,这条指令 执行 失败,但 不会 报错!$(shell cp -rf $(LOCAL_PATH)/libs/*.so $(TARGET_OUT)/lib)
---------- cut here ------------------解释:
LOCAL_MODULE 指定 拷贝后的apk的名字(全名),这个变量里可以有路径,但路径也会被拷贝,创建,如果 是在编译整个Android的源码,这个apk必须已经添加到了PRODUCT_PACKAGES 变量里,否则 不会拷贝到,相应的位置,
LOCAL_MODULE_PATH 指定拷贝的路径,如果路径不存在自己创建
LOCAL_SRC_FILES 指定 源apk
LOCAL_CERTIFICATE := PRESIGNED 表示 这个apk已经签过名了,系统不需要再次 签名;
LOCAL_MODULE_CLASS 指定文件类型,apk文件用APPS, 并且 会检查 是否是apk文件,动态库so文件用SHARED_LIBRARIES ,bin文件用EXECUTABLES,其他文件 用ETC
注意:若是被预置的apk里有so库,需要将从Test.apk的 so库拷贝到 out/target/product/xxx/system/lib/目录下,若无 so 库,则去掉此步;
Android提供了Prebuilt编译方法,两个文件prebuilt.mk和multi_prebuilt.mk,对应的方法宏是BUILD_PREBUILT和 BUILD_MULTI_PREBUILT。
prebuilt.mk就是prebuilt的具体实现,它是针对独立一个文件的操作,multi_prebuilt.mk 可以针对多个文件的,它对多个文件进行判断,然后调用prebuilt对独立一个文件进行处理。
0 0
- Android.mk 使用 环境 小结
- Android.mk 使用 环境 小结
- Android.mk 使用 环境 小结
- Android.mk 使用环境
- Android.mk小结
- Android.mk小结
- Android.mk 小结
- Android.mk小结
- Android.mk文件小结
- android之Android.mk小结
- Android.mk使用模板
- android.mk的使用
- Android.mk使用模板
- Android.mk使用笔记
- Android.mk的使用
- Android.mk使用
- Android.mk使用注意事项
- Android.mk小结,讲的比较详细
- mongodb 3.2.5安装过程详细记录
- 实战教你如何在短时间打造一个男性流量站
- 数学归纳解决递归问题
- Android源码目录结构详解
- thrift应用
- Android.mk 使用 环境 小结
- linux挂载硬盘重启后出现an error occurred during the file system check错误最有效的解决办法
- css块垂直水平居中
- 理解Python的With as语句
- SVN切换项目地址
- js改变样式
- 在 Angularjs 中 ui-sref 和 $state.go 如何传递参数
- 多线程之--4个窗口售200张票
- java核心技术 第五章 继承