eng 工程版本: adb默认是打开的,且设置向导是可选的。
user 用户版本: adb 默认是关闭的,为了提高速度dex是打开的。
其中 apk及模块还有些区别,但是作为开发人员来说最重要的就是上面的区别。
可以参考 Google 官方描述build/core/build-system.html 的详细说明
eng This is the default flavor. A plain make is the same as make eng.
* Installs modules tagged with: eng, debug, user, and/or development.
* Installs non-APK modules that have no tags specified.
* Installs APKs according to the product definition files, in addition to tagged APKs.
* ro.secure=0
* ro.debuggable=1
* ro.kernel.android.checkjni=1
* adb is enabled by default.
* Setupwizard is optional
user make user
This is the flavor intended to be the final release bits.
* Installs modules tagged with user.
* Installs non-APK modules that have no tags specified.
* Installs APKs according to the product definition files; tags are ignored for APK modules.
* ro.secure=1
* ro.debuggable=0
* adb is disabled by default.
* Enable dex pre-optimization for all TARGET projects in default to speed up device first boot-up
userdebug make userdebug
The same as user, except:
* Also installs modules tagged with debug.
* ro.debuggable=1
* adb is enabled by default.
本文介绍了Android系统中eng工程版本与user用户版本的主要区别。eng版本主要用于开发环境,adb默认开启并提供更多的调试选项;而user版本则针对最终用户发布,adb默认关闭并进行了dex预优化以加快启动速度。
3985

被折叠的 条评论
为什么被折叠?



