我去Android Studio发布了我的第一个Android应用程序。当我上传到Google Play时,我收到了此错误:
上传失败:您需要使用其他包名称,因为“com.example”受到限制。
当我重命名包名时,它仍然给我错误信息。我尝试制作一个新包并将所有内容移动到那个,但错误仍然存在。我删除了com.example包的任何痕迹。我还确保将Android Manifest.xml更改为新包。
唯一仍然说旧包名称的是BuildConfig.java,其中包含此行,后跟剩余的旧包名:
public static final String PACKAGE_NAME = "com.example"
如果有人可以帮助我并回答这篇文章,我将不胜感激。我正在使用Ubuntu Linux 14.04.1。
答案 0 :(得分:5)
这与最近Android Gradle插件的更改有关,该插件将应用程序的标识符与Java包名称分开。
Android使用应用程序的标识符来标识您的应用程序。它还用作Play商店网址中的标识符。这通常但不总是与Java包名称相同。
从Gradle插件版本0.11开始,使用applicationId
设置在build.gradle中设置应用程序ID,如下所示:
android {
defaultConfig {
applicationId "com.yourdomain.yourapp"
}
}
设置此项应该可以解决您的问题。
开发者控制台中的错误消息可能只是没有更改以反映新术语。
从Gradle插件版本0.11 release notes:
0.11中用户可见的一个变化是我们已经弃用了 packageName和packageNameSuffix设置,并将它们重命名为 applicationId和applicationIdSuffix。这样做的目的是使 很明显,这个应用程序ID与包解耦 清单中的声明,特别是R类和 BuildConfig类,以及应用程序内的所有实现类, 可以自由重命名和重构;你只需要保持 applicationId一样。如果打开build.gradle文件,则lint为 突出显示这些已弃用的调用并提供要更新的快速修正 它们。