[英]set max sdk version on build.gradle
如何在 android studio 的 build.gradle 上设置 android max sdk 版本。
我想做一个有两种风格的应用程序,第一个将在 x~y 版本之间运行,第二个在 y+ 版本运行
在 Eclipse 之前,在 AndroidManifest.xml 我们有android:maxSdkVersion="y"
但它如何在 gradle 上工作?
您不能在maxSdkVersion
中设置maxSdkVersion。 实际上,由于几个问题,Google不鼓励这样做。 主要问题是,如果系统不符合应用程序中指定的maxSdkVersion
,Google Play可能会决定在更新过程中从用户设备中删除该应用程序。 例如,假设您有一台具有API级别12的设备,并安装了一个具有android:maxSdkVersion="12"
,则稍后您会收到系统更新,该更新会将您的android版本升级到API级别13 ... Google Play将卸载您的应用程式。
基本上,您不需要此设置,可以轻松地忽略它,使用targetSDkVersion
属性和minSdkVersion
。
minSdkversion
”的“处于风味1”的应用,将minSdkversion
设置为x,将targetSdkVersion
为y 请注意这一点。
未来的Android版本(Android 2.0.1以后的版本)将在安装或重新验证期间不再检查或强制执行maxSdkVersion属性。 但是,当向用户展示可下载的应用程序时,Google Play将继续使用该属性作为过滤器。
https://developer.android.com/guide/topics/manifest/uses-sdk-element.html
我认为接受的答案是不正确的。 接受的答案说无法设置 maxSdkVersion - 这是不正确的。 仍然可以设置 android:maxSdkVersion 如此处所述https://developer.android.com/guide/topics/manifest/uses-sdk-element但开发人员必须注意警告并且应该理解为什么要这样做。 这里没有人会注意在 Play 商店中您可以一次提供多个捆绑包/包(每次更新/发布),一个捆绑包可以针对新设备,另一个针对旧设备,因此 maxSdkVersion 的第二个限制很好。 一个应用程序包具有版本代码,例如 2xyz,对于旧设备,版本代码为 1xyz,当 minSdkVersion 允许时,谷歌总是安装更高的代码。 所以开发者可以有目的地设置 maxSdkVersion 并且他知道为什么 hi 这样做。
我们的每个应用程序更新都有 2 个具有不同 app/build.gradle 的包...
对于旧设备(maxSdkVersion 在这里有意义)
defaultConfig {
minSdkVersion 16
maxSdkVersion 23
targetSdkVersion 30
versionCode 1058
versionName "4.4.0"
}
对于新设备(不限制 maxSdkVersion,因为 googole 警告不应该使用)
defaultConfig {
minSdkVersion 24
targetSdkVersion 30
versionCode 2058
versionName "4.4.0"
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.