如何在已发布的 Play 应用程序上回滚 Gradle SDK 设置?什么是 Target SDK 和最小 SDK?

How do I roll back Gradle SDK settings on a published Play app? What is Target SDK and minimum SDKs?

在开发过程中,我发布了 SDK 21 Lollipop,但我无法在我的 KitKat 设备上使用它。应用程序非常简单,我只将 SDK 用于动画和 material 设计,但是当我尝试对 Play 商店进行更改时出现了两件事。

我不确定要为我的应用设置什么。有target SDK,minimum sdk等等。我将所有这些设置为 21 到 22。现在,如果我尝试发布一个使用 SDK 最低 11 的应用程序,Play 会生气并说它无法在设备上回滚。我不在乎更新用户的电话。它是一个不需要的简单应用程序,但它不会让我更新和替换主 apk。

我该怎么办?我应该改变什么?应用程序发布在 Thered Software 下 Google Play。

首先您应该确保您了解编译SDK、最小SDK 和目标SDK 版本之间的区别。这些在 What is the difference between min SDK version/target SDK version vs. compile SDK version?.

中有很好的解释

Now, if I try and publish an app that uses SDK minimum 11, Play gets mad and says that it cant roll back on devices.

如果您发布了 Play 商店向您显示的特定错误消息,这会有所帮助,但听起来您正在尝试上传版本代码低于应用现有版本的 APK。

例如,假设您之前上传了最低 SDK 为 21 的 APK,并将该 APK 标记为应用程序的版本 56。您现在上传的任何版本都需要具有 57 或更高版本代码。这是因为 Android 使用此版本代码来确定应用程序的哪个版本 "newer."

这是在您的build.gradle中指定的,如下所示:

android {
    defaultConfig {
        versionCode 56
    }
}

您可以针对不同的 api 级别发布多个 apk:http://developer.android.com/training/multiple-apks/api.html

更改清单中的 minsdk 要求。 做一个新版本(不要忘记增加版本代码)。

就这些了。