Android applicationId与包名的区别
应用ID与包名区别
每个Android应用都有一个唯一的应用ID.在Android设备和市场上,这个ID是你应用的唯一标识.若想在市场上更新应用,新应用的ID必须和原来apk的应用ID一致.所以一旦发布了应用,就不能再改变应用ID.
在Eclipse中没有applicationId这个概念,在Eclipse中applicationId即等同于包名。但是到了Android Studio中,这两个概念做个区分。包名的定义在清单文件中:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myapplicationtest" >
应用ID是在moudle层的build.gradle中定义,applicationId值即为应用ID,如下所示:
android {
defaultConfig {
applicationId "com.example.myapplicationtest"
minSdkVersion 15
targetSdkVersion 24
versionCode 1
versionName "1.0"
}
...
}
但是,在Android Studio中创建一个新项目时,applicationId默认是和项目的包名一致的。所以常常有开发者会将两者混淆,以为它们是一个概念。实际上,应用ID和包名是相互独立的。改变包名不会影响应用ID,反之亦然。
https://blog.csdn.net/jinrall/article/details/53465403