我看到您有些困惑,让我们先搞清楚它们在 Android 中的含义。
通过这个属性,您告诉 Android 您正在针对哪个 SDK 进行开发。重要的是,它告诉系统该属性与 SDK 级别相匹配,系统不需要启用任何行为来维护兼容性。
您的应用仍然可以在旧版本上运行(最低版本为 minSdkVersion)。
顾名思义,这是运行应用所需的最低 SDK 版本,如果试图安装应用的设备具有较低的 SDK 版本,则系统将阻止该过程。
需要注意的是,如果您在更新中提高了 minSdkVersion,所有已安装应用并且不再符合此属性的用户将无法再使用应用程序。
同样,属性名称就是含义。这是设备可以拥有的最大 Sdk 版本,以便运行应用。
请注意文档中的以下内容:
在其清单中声明 maxSdkVersion="5" 的应用在 Google Play 上发布。 运行 Android 1.6(API 级别 4)的设备的用户下载并安装应用程序。几周后,用户收到了 Android 2.0(API 级别5)的 OTA 系统更新。安装更新后,系统检查应用程序的 maxSdkVersion 并成功重新验证它。应用程序正常运行。然而,一段时间后,设备再次接收到系统更新,这次更新为 Android 2.0.1(API 级别 6)。更新后,系统无法再次验证应用程序,因为系统自身的 API 级别(6)现在比应用程序支持的最大级别(5)更高。系统防止应用程序对用户可见,实际上将其从设备中删除。
就是这样。 还要查看此处的文档
当您首次尝试设置项目并选择目标时,Android Studio 还会告诉您 Play 商店中有多少人使用该目标,因此 24 小于 1%。所以如果我的目标是 24,那么只有 1% 的商店能够使用我的应用程序吗?
实际上不是这样,您必须考虑 minium 和 max 才能找出有多少市场百分比可以使用您的应用程序。这只是说明有多少人(以百分比表示)拥有该 SDK 版本。
我很确定问题与 SDKVersion 无关,也许您应该发布一些日志以便更详细地回答。
希望对您有所帮助 :)