Xamarin Forms Android目标API级别警告

8
在过去几天中,每当我将新的Xamarin Forms应用程序部署到Google Play商店时,都会在Play商店收到以下警告:
您的应用程序当前针对API 15进行目标设置,必须至少针对API级别26进行目标设置,以确保它建立在最新的安全性和性能优化API上。
从2018年8月开始,新应用程序必须至少针对Android 8.0(API级别26)进行目标设置。
从2018年11月开始,应用程序更新必须针对Android 8.0(API级别26)进行目标设置。
但是,目标Android版本设置为“自动-用户目标框架版本(API 27)”,而最低Android版本为“覆盖-Android 4.0.3(API级别15)”。
我不认为自2018年8月起,只有针对Android 8或更高版本的应用程序被允许在Google Play商店中出现,对吗?因此,当前我可以忽略这个警告,但是我需要在8月份做什么改变呢?
谢谢!
3个回答

11

与常识相反,使用Xamarin时,当您将目标SDK设置为使用最新版本时,实际上是针对最低版本进行定位。 您需要将目标SDK设置为特定版本。

换句话说,从“自动”更改为特定版本。

更多信息请参见此处:

https://github.com/xamarin/xamarin-android/issues/1163


有趣!谢谢Lewis,我会在下一个版本上尝试并添加评论,看它是否有效!谢谢! - K232
我从自动更改为8.1,然后出现了以下错误,非常感谢您的帮助! 错误XA5207:找不到API级别27的android.jar。这意味着未安装API级别27的Android SDK平台。请在Android SDK Manager(工具>打开Android SDK Manager ...)中安装它,或将您的Xamarin.Android项目更改为针对已安装的API版本。(XA5207) - K232
1
即使将精确的目标版本设置为27级,仍然看到此警告。 - Emil

0

我认为你的构建过程可能出了问题,即使你认为目标API是27,但实际上并不是。你可以使用以下命令验证你的目标API/SDK:

aapt dump badging my.apk

目标 SDK 将出现在这样的一行中

targetSdkVersion:'27'

因此,您可以使用像grep这样的工具快速查找它。

如果aapt给出了26或27的结果,而Play商店仍然发出警告,则这是Play的错误,您应该通过Play控制台支持报告它。您可以通过Play控制台中的帮助菜单(“?”图标)与他们联系。


1
aapt似乎不在Visual Studio的SDK命令提示符中,你知道它在哪里吗? - K232

0

应用程序将继续工作,但您应该考虑针对API 26进行目标设置,以便不向您的用户显示警告。这对所有方面都是一个胜利:您的应用程序更安全,Google很高兴,您的用户不会看到会使他们比原本少信任您的应用程序的警告。

编辑:您可能已经知道了,但是您需要在build.gradle文件中设置targetSdkVersion26,以满足不显示警告的要求。

P.S. 在这里(文章)您可以阅读更多相关信息。


1
谢谢John,但正如我在问题中所写的:目标版本已经是API 27了,而且你提供的文章也说目标版本应该是26,但最低可以是14或其他。所以这就是我已经拥有的配置。当你更新时,你的Xamarin Forms应用程序没有收到警告吗? - K232

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接