我在Xamarin.Android项目中更新已安装的Nuget软件包时遇到了问题。运行更新时,出现以下错误:
Could not install package 'Xamarin.Android.Support.Animated.Vector.Drawable
27.0.2'. You are trying to install this package into a project that targets
'MonoAndroid,Version=v8.0', but the package does not contain any assembly
references or content files that are compatible with that framework. For
more information, contact the package author.
快速谷歌搜索产生了几个类似答案的结果,如this question中的答案。似乎我只需要确保我的Target Framework
设置得足够高。
在instructions found here之后,我开始在Visual Studio 2017中更改Target Framework
,但我发现它已设置为使用8.0
。
为了让这些软件包更新,我还缺少另一个步骤吗?
答案 0 :(得分:5)
正如Jon Douglas所说,API 27实际上需要Android 8.1。如果您没有选择切换到8.1,则需要更新Visual Studio。完成后,您应该能够通过Android SDK管理器(工具 - > Android - > Android SDK管理器)安装8.1 SDK。
安装SDK后,您可以将Target Framework
设置为8.1并更新Nuget包。
答案 1 :(得分:4)
答案 2 :(得分:0)
当我最近尝试更新这个库时,我发现csproj文件中有一些旧的延迟引用,导致冲突。
要解决,
在重新加载项目时(右键单击>重新加载项目),我能够更新该库。
答案 3 :(得分:0)
在我的情况下,我使用最新的SDK版本Visual Studio 2017,其中包括Android 8.1。
即使将所有3个Android目标版本从项目属性更改为8.1,csproj仍然显示7.1的TargetFrameworkVersion,如下所示:
<TargetFrameworkVersion>v7.1</TargetFrameworkVersion>
我手动将其更改为8.1
<TargetFrameworkVersion>v8.1</TargetFrameworkVersion>
了解最低Android版本是否仍需要达到8.1,这将会很有趣。
然后能够更新Nuget包。