谷歌应用市场APK发布错误(多个APK)

3
我使用多个apk的概念发布了我的应用程序(如您所见附图)。 现在我正在尝试发布应用程序的更新版本。 但Play不允许我这样做。 它说“该版本未提供给任何设备配置”。 有关更多信息,请查看附图。
3个回答

0

您只能一次使用相同的PackageName发布APK。您必须在清单文件中更改应用程序的包名称和其名称的Java类。

因此,如果您从一个源制作了多个APK,则每个APK都需要有自己的包名称。

编辑

如果您编辑具有唯一包名称的这些APK之一,则必须在清单文件中更新版本号。例如:

您有您的第一个应用程序,在清单文件中,它看起来类似于这样:

    android:versionName="1.0" android:versionCode="1"

如果您想要更新,您需要更改versionCode和name

    android:versionName="1.1" android:versionCode="2" 

如果您使用多个 APK 支持,那么它是类似的。API 表示:
*每个 APK 必须具有不同的版本代码,由 android:versionCode 属性指定。

我已经使用多个APK的概念发布了应用程序(参考http://developer.android.com/google/play/publishing/multiple-apks.html)。现在,我正在尝试发布应用程序的更新版本。 - Manu
你说得对。而且我已经在做了。正如你所看到的,我正在尝试发布版本代码更高的apk(101)。但这似乎是其他问题。@Opiatefuchs - Manu
1
啊,我认为问题是,正如API所说,需要更高API级别的APK必须具有更高版本代码。因此,您的版本号为99(2.6.46)的APK适用于API 9+,但101(2.6.66)适用于API 7+。我认为这就是问题所在... - Opiatefuchs
嗯,那很有道理。所以在发布版本101(2.6.66)之前,我必须取消发布或停用版本99(2.6.46)吗??? - Manu
1
我认为可以,这个方法是可行的。但是我认为对于未来来说,更好的方法是在较高的API上提供最高可能的数字,以便您可以更新您的应用程序而不会出现问题。 - Opiatefuchs

0

有一个推荐的版本代码命名模式,可以完全解决您遇到的问题。它在多APK支持文档中进行了讨论。

它通过使用包括SDK API版本前缀以及您的应用程序实际版本的7位versionCode数字来工作。以下是版本代码方案的图表:

Version scheme for different API levels

在OP提供的示例中,这将允许更新API 7+版本而不影响当前的9+版本,并且将防止错误阻止发布101版本。现在,两个版本的versionCode将是:
  • 支持API 7+的版本:versionCode 0700101
  • 支持API 9+的版本:versionCode 0900101

0

同意 Brent 的答案。

简而言之,API 支持越高的应用程序应该具有更高的版本代码。

低 API 支持的应用程序应该具有比高 API 支持的应用程序更低的版本代码。

顺便提一下:请确保您在 Google Play 开发者帐户中切换到高级模式。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接