我想在playstore上使用已更改的targetSdkVersion更新应用程序

时间:2016-01-31 09:58:59

标签: android google-play google-play-services android-manifest

我已经使用以下用途-SDK将应用更新为 playstore

  <uses-sdk
      android:maxSdkVersion="23"
      android:minSdkVersion="17"
      android:targetSdkVersion="23"/>

我想将我的targetSdkVersion "23"降级"22"。我做到了。如果我上传到Playstore,更新是否会适用于所有用户?

3 个答案:

答案 0 :(得分:3)

你根本没有任何问题。您对<uses-sdk>所说的是,您的应用已经过完全测试,无法在第22版中运行,甚至可以在较低版本中运行直到17年。

我建议你仔细看看这个documentation版本。

  

<强> 机器人:targetSdkVersion

     

指定应用程序所针对的API级别的整数。如果   未设置,默认值等于给予minSdkVersion的值。这个   属性通知系统您已针对目标进行了测试   版本和系统不应启用任何兼容性行为   保持您的应用与目标版本的向前兼容性。   该应用程序仍然可以在旧版本上运行(低至   的minSdkVersion)。

     

随着Android每个新版本的发展,一些行为甚至是   外表可能会改变。但是,如果平台的API级别是   高于你的应用程序的targetSdkVersion声明的版本,   系统可以启用兼容性行为以确保您的应用程序   继续以你期望的方式工作。你可以禁用这样的   通过指定targetSdkVersion来匹配的兼容性行为   它运行的平台的API级别。例如,设置   这个值为&#34; 11&#34;或更高版本允许系统应用新的默认值   在Android 3.0或更高版本上运行时,应用程序的主题(Holo)   在较大的屏幕上运行时也会禁用屏幕兼容模式   (因为对API级别11的支持隐含支持更大的屏幕)。

     

系统可能启用许多兼容性行为   基于您为此属性设置的值。其中几个   行为由相应的平台版本描述   Build.VERSION_CODES参考。

     

为了维护您的应用程序以及每个Android版本,您   应该增加此属性的值以匹配最新的API   等级,然后彻底测试你的相应的应用程序   平台版本。

答案 1 :(得分:1)

即可。您无法通过更改目标SDK来更新您的应用 23至22岁。

<强> 问题

拥有版本代码为6的APK(针对SDK 23或更高版本)的用户在尝试升级到此APK时会收到错误,因为它定位到SDK 22。

现在,众所周知,当我们将目标SDK保持为&lt; 23时,默认情况下安装应用程序时,会为应用程序授予所有权限,如果我们保留目标SDK 23或更高版本,则所有权限都设置为安装应用程序时关闭。

<强> 解决

确保您的版本包括定位到SDK 23或更高版本的APK,所有拥有版本代码为6的APK的用户都可以升级。

答案 2 :(得分:0)

如果您没有更改代码(gradle文件除外)并且应用程序仍在“23”版本模拟器上运行,那么应该没有任何问题。 这实际上取决于您在代码中使用的功能(类和方法)。 如果您没有在代码中使用任何Android 6的功能,那么在没有对Android 6用户进行任何更改的情况下降级目标sdk版本应该没有任何问题。