我正在构建一个应用程序,我有一百个像这样的警告:“跳过TPProject.Resource.Drawable.ic_collapse_00000。请检查你的Nuget包版本是否兼容。”
我的编译/目标框架是Android 8.0,我的目标Android版本是6.0,我的最低Android版本是5.1。我已将所有Nuget软件包更新到最新版本。
怎么了?
答案 0 :(得分:5)
这确实摆脱了警告:
结果:所有警告均已消失,但Resource.designer.cs已被修改
public static void UpdateIdValues()
{
...
lot of new rows
...
}
答案 1 :(得分:3)
控制台中的错误似乎与自动添加的android SDK资源有关。也许尝试让VS重新生成资源文件,方法是在Android项目的资源目录中添加一个新文件(任何东西,你可以删除它)。如果这不起作用,请尝试将编译和目标版本明确地设置为8.0并执行相同的操作。
此外,我认为ic_cast_grey是Support v7 library的一部分,因此请确保您已将其包含在Nuget包列表中。
修改强>
您还应该通过以管理员身份运行SDK Manager来确保您的Android SDK内容是最新的(假设您已经在Windows上并将其安装到默认的Program Files目录中)。
我还读过,有时它有助于删除和重新添加软件包,以便刷新本地缓存。也许你也可以试试。
答案 2 :(得分:1)
我遇到了同样的问题,并将此条目添加到csproj中来解决此问题:
<AndroidUseManagedDesignTimeResourceGenerator>False</AndroidUseManagedDesignTimeResourceGenerator>
禁用managed tool并再次使用旧的aapt工具。
从Xamarin.Android 10.0.0.4开始,Visual Studio 2019版本16.3 Preview 2或Visual Studio 2019 for Mac版本8.3 Preview 2,Microsoft downgraded the warning to message/information附带。
因此,当16.3结束时,警告将消失,因为它们不是真正的问题。
答案 3 :(得分:0)
如果您的项目使用的Xamarin.Android.Support
库版本与包含的NuGet
软件包(使用特定的Xamarin.Android.Support
库版本构建的软件包)不同,则会出现警告。不知道此行为是否已在较新的版本中得到解决,但否则您将被此警告所困扰。
您可以更改所有Xamarin.Android.Support
库的库版本,但是如果包含许多NuGet
软件包,则不可能全部使用同一版本。
升级Xamarin.Android.Support
库并增加TargetFrameworkVersion
后,出现了错误。另一个解决方案是将其降级,但是我不能,因为其他库依赖它。
答案 4 :(得分:0)
我知道这是一个老问题,但是最近我遇到了同样的问题。对我有用的解决方案是将最低Android版本更改为6.0:
如果您阅读Xamarin.Android.Support。*的Dependencies部分,则 NuGet软件包管理器中的库,您可以看到 Xamarin.Android.Support。* v28.0.0库仅支持 MonoAndroid,Version = v6.0到MonoAndroid,Version = v9.0。
简而言之; v28.0.0支持库适用于Android 6.0-9.0, 因此,在我们取消最低Android版本之前的警告...
https://forums.xamarin.com/discussion/128406/xamarin-forms-3-1-resources-warnings-for-android