实践是知识的母亲,知识是生活的明灯。这篇文章主要讲述「转」Android编译选项中的enguseruser-debug相关的知识,希望能为你提供帮助。
android编译选项中eng、user、user-debug主要区别
reference:使用编译类型在针对特定产品进行编译时,如果能在最终发布版本的基础上进行细微修改,通常会非常有用。
- https://blog.csdn.net/dearsq/article/details/52589376
- https://blog.csdn.net/yanghanxing110/article/details/77721007
在模块定义中,模块可以通过
LOCAL_MODULE_TAGS
指定标记,这些标记可以是以下一个或多个值:optional
(默认)、debug
、eng
。1、如果某个模块通过
LOCAL_MODULE_TAGS
指定标记,标记默认为 eng。仅当编译选项为eng时,系统才会安装该模块。【「转」Android编译选项中的enguseruser-debug】2、如果某个模块通过
LOCAL_MODULE_TAGS
指定标记,标记默认为 debug。仅当编译选项为eng/user-debug时,系统才会安装该模块。3、如果某个模块没有通过
LOCAL_MODULE_TAGS
指定标记,则其标记默认为 optional
。仅当 PRODUCT_PACKAGES
的产品配置需要可选模块时,系统才会安装可选模块。已定义的编译类型
类型 | 意义 |
---|---|
eng |
这是默认的编译类型。安装带有 eng 和/或 debug 标记的模块。除了带有标记的模块之外,还会根据产品定义文件安装相应模块。ro.secure=0 、ro.debuggable=1 、ro.kernel.android.checkjni=1 、adb 默认处于启用状态。 |
user |
这是旨在用作最终版本配置步骤的编译类型。安装带有 user 标记的模块。除了带有标记的模块之外,还会根据产品定义文件安装相应模块。ro.secure=1 、ro.debuggable=0 、adb 默认处于停用状态。 |
userdebug |
除了以下几点之外,其余均与 user 相同:还会安装带有 debug 标记的模块。ro.debuggable=1 、adb 默认处于启用状态。 |
user | userdebug | eng |
---|---|---|
仅安装标签为 user 的模块 | 安装标签为 user、debug 的模块 | 安装标签为 user、debug、eng 的模块 |
设定属性 ro.secure=1,打开安全检查功能 | 设定属性 ro.secure=1,打开安全检查功能 | 设定属性 ro.secure=0,关闭安全检查功能 |
设定属性 ro.debuggable=0,关闭应用调试功能 | 设定属性 ro.debuggable=1,启用应用调试功能 | 设定属性 ro.debuggable=1,启用应用调试功能 设定属性 ro.kernel.android.checkjni=1,启用 JNI 调用检查 |
默认关闭 adb 功能 | 默认打开 adb 功能 | 默认打开 adb 功能 |
打开 Proguard 混淆器 | 打开 Proguard 混淆器 | 关闭 Proguard 混淆器 |
打开 DEXPREOPT 预先编译优化 | 打开 DEXPREOPT 预先编译优化 | 关闭 DEXPREOPT 预先编译优化 |
推荐阅读
- 244 Android Studio中gradle的介绍
- androidstudio配置http proxy以及配置gradle
- Android自定义ViewGroup-入门
- Android 高版本无法抓取 HTTPS解决方案
- WinXP如何安装Apache+MySQL+PHP环境
- WinXP跟踪IP地址的办法
- WinXP隐藏一键还原命令的技巧
- WinXP壁纸设置注意事项
- WinXP与Win7哪个更适合玩游戏?