我试图发布我的Android应用程序到谷歌播放的新版本,并得到以下错误?

由于以下原因,无法发布该配置: 版本1没有提供给任何设备配置:所有可能接收版本1的设备都将接收版本4

我不明白。这是什么意思?


当前回答

在生产环境中,一次只能有一个APK。在上传之前,您必须停用当前的一个。alpha测试APK和beta测试APK也一样——你只能发布一个APK进行测试。

我同意错误消息的措辞令人震惊!

其他回答

@Chris的解决方法是对的。但这句话真正的意思是:

version1和version4具有相同的配置:相同的API级别,相同的屏幕分辨率……基本上所有的东西都在清单上。 所以这意味着任何设备都可以安装version,也可以安装version4。 现在一切都清楚了:因为version4有更高的versionCode,所以每个设备将接收version4而不是version1。

仍然将版本1置于“生产中”已经没有任何意义了。在任何情况下,任何设备都不会接收这个版本。所以你应该“停用”它。

由于某些原因,当你上传一个新的APK而没有立即点击“发布”(你可能第一次点击了保存草案),谷歌认为你想同时发布两个APK。

当你有不同配置的多个APK时,这通常是需要的(比如:android 2的一个版本。X版本和3+版本,或者平板电脑版本和手机版本等等……)

然而,在你的情况下,你只是上传一个升级,你想要它取代你以前的APK。

解决:

单击右上方的“切换到高级模式” 点击Action ->移动到旧APK并选择“取消激活” 错误应该消失,你应该看到你的旧apk在“其他APKS”和新的准备发布。 只需单击Publish以使更改生效,然后等待它们传播。

谷歌警告是错误的。 希望这能澄清。

我也有同样的问题,但我在APK文件上执行了以下命令

jarsigner -verify -verbose -certs Myapp.apk

然后我把新的APK上传到游戏商店,它很容易就发布了。

我有同样的问题,但我解决了块Lint错误。

看到Lint错误页面,右上角包装图标,点击那里和块包装。 当您单击“留下lint错误”时,应用程序将导出烧焦的应用程序包。

我第一次上传APK时也遇到了这个问题,但我在查看APK详细信息时注意到API级别为18-17。因此,我将此代码添加到AndroidManifest.xml以指定最大API级别

<uses-sdk android:minSdkVersion="18"
        android:targetSdkVersion="23"
        android:maxSdkVersion="23" />

这样做之后,问题就解决了:)