【发布时间】:2014-07-30 11:50:41
【问题描述】:
过去一年我一直在 Eclipse 中开发一个 Android 项目,API 级别设置为 4.2(目标 SDK 17)。 现在我想在 Play 商店中发布它。由于我的应用在 KitKat 上完美运行,我是否应该将目标 SDK(清单文件)更改为最新版本(即 4.4)?
【问题讨论】:
标签: android google-play target-sdk
过去一年我一直在 Eclipse 中开发一个 Android 项目,API 级别设置为 4.2(目标 SDK 17)。 现在我想在 Play 商店中发布它。由于我的应用在 KitKat 上完美运行,我是否应该将目标 SDK(清单文件)更改为最新版本(即 4.4)?
【问题讨论】:
标签: android google-play target-sdk
targetSdkVersion的用途解释in the developer documentation for <uses-sdk>:
此属性通知系统您已针对目标版本进行了测试,并且系统不应启用任何兼容性行为以保持您的应用与目标版本的向前兼容性。该应用程序仍然能够在旧版本上运行(低至 minSdkVersion)。
随着 Android 随着每个新版本的发展,某些行为甚至外观可能会发生变化。但是,如果平台的 API 级别高于您应用的 targetSdkVersion 声明的版本,系统可能会启用兼容性行为,以确保您的应用继续按照您预期的方式运行。
TL;DR:您应该将 targetSdkVersion 设置为您主要用于开发和测试的 API 级别。 Google 建议您确保这是最新的 Android 版本,但这可能并不总是可行(出于财务和其他原因)。
【讨论】:
请参阅您的应用程序将与 kitkat 一起正常工作,因为较新的版本始终与较旧的 android 版本兼容,但反之亦然......如果您开发更高的API 级别的东西,然后尝试在旧版本的android 中运行它,这可能会导致您的应用程序可能无法运行或某些功能可能无法按预期运行。因此,您也可以添加KITKAT 兼容性你的 android 清单文件...干杯
【讨论】:
根据this announcement,您必须确保使用最新的目标 SDK(最多比最新版本旧一两个版本),否则您无法在 Play 商店中发布您的应用。对于 2018 年 8 月和 2018 年 11 月更新现有应用的新应用,这是强制执行的,要求您以 API 级别 26 或更高版本为目标。
【讨论】: