【问题标题】:Nuget Cant install Xamarin.Android.Support.Animated.Vector.Drawable 27.0.2Nuget 无法安装 Xamarin.Android.Support.Animated.Vector.Drawable 27.0.2
【发布时间】:2018-04-05 03:01:46
【问题描述】:

在我的 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。

为了让这些包更新,我还缺少另一个步骤吗?

【问题讨论】:

  • API 27 != 8.0。它实际上是8.1。因此,您需要 Android 8.1。
  • 确保 VS 是最新的

标签: c# visual-studio xamarin xamarin.android nuget


【解决方案1】:

正如 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 包。

【讨论】:

  • 类似问题,我安装了 8.1。还确保项目设置中的所有三个 Android 版本都设置为 8.1,但错误仍然存​​在。
【解决方案2】:

您必须将 Mono.Android.dll 版本更改为 8.1,

【讨论】:

  • 这不是那么容易,你能解释一下我们如何更新Mono.Android dll吗?
【解决方案3】:

最近尝试更新这个库时,发现csproj文件中有一些旧的挥之不去的引用,导致冲突。

要解决,

  • 卸载项目(右击项目>卸载项目)
  • 打开csproj(右键项目>编辑xxx.csproj)
  • 删除对“旧”目标的所有引用(例如,对旧库的整个引用标记)
  • 可能还有需要移除的导入标签

在重新加载项目时(右键单击 > 重新加载项目),我能够更新该库。

【讨论】:

  • 旧引用什么?
【解决方案4】:

在我的例子中,我有 Visual Studio 2017 和最新的 SDK 版本,其中包括 Android 8.1。

即使在将所有 3 个 Android 目标版本从项目属性更改为 8.1 之后,csproj 仍然显示 TargetFrameworkVersion 为 7.1,如下所示:

  <TargetFrameworkVersion>v7.1</TargetFrameworkVersion>

我手动将其更改为 8.1

 <TargetFrameworkVersion>v8.1</TargetFrameworkVersion>

如果最低 Android 版本仍需要为 8.1,将会很有趣。

然后能够更新 Nuget 包。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-15
    • 2014-02-15
    • 1970-01-01
    • 1970-01-01
    • 2018-08-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多