本博客地址:http://blog.csdn.net/talentclass_ctt/article/details/75738653
新手在接到项目后就着急实现,却常常忘了一些基本的东西。
一、applicationId和package
1. 在eclipse的Android项目中,只有package没有applicationId,该包名既用于命名资源类的包名,也用于指定应用的唯一标识,也就是你一改package就会变成另一个应用。
2. 在Gradle 构建 Android 项目中才有applicationId和package之分,applicationId用于指定应用的唯一标识,而package用于命名资源类的包名。这样我们在重构的时候即使改了包名,只要不改applicationId,无论手机还是应用商店都认为是一个应用,就不会存在两个一样的应用了。
3. applicationId在build.gradle(Module:app)里设置,默认和package一样;package在AndroidManifest.xml里设置。这两个一般都用:com.公司名.项目名。
二、versionCode和versionName
1. 在eclipse的Android项目中,这两个都是写在AndroidManifest.xml的<manifest>里,在Gradle 构建 Android 项目中一般写在build.gradle(Module:app)里。
2. versionCode:用于应用市场、程序内部识别版本,是INT类型,默认为1,在应用商店更新版本时这个值必须改,该值不显示给用户;
versionName:这个就是我们常说的版本号,是字符串类型,该值可以显示给用户。
三、minSdkVersion、targetSdkVersion和compileSdkVersion
1. minSdkVersion:应用可以运行的最低要求,低于这个版本的手机安装不了;
targetSdkVersion:指定apk运行的目标版本,如果设置了此属性,你就可以使用指定版本的新特性;
compileSdkVersion:可用的最新 API,一般用最高版本来编译。
2. 三者的值的一般安排:
minSdkVersion (用低版本兼容) <= targetSdkVersion == compileSdkVersion (用高版本使用新特性,更稳定),大部分情况下minSdkVersion < targetSdkVersion 。
本博客地址:http://blog.csdn.net/talentclass_ctt/article/details/75738653