首页 > 解决方案 > Xamarin.Firebase.Auth 71.1605.0 和 Xamarin.Android.Arch.Work.Runtime 1.0.0.3 兼容性问题

问题描述

我有一个 Xamarin Forms v4.4.0.991640(iOS 和 Android)解决方案,其中包含(除其他外)2 个项目:

  1. ProjectAuth 使用 Xamarin.Firebase.Auth 71.1605.0(当前最新版本)
  2. ProjectWorker 使用 Xamarin.Android.Arch.Work.Runtime 1.0.0.3(又是最新版本)

顺便说一句,项目的名称不是实际的。

似乎在构建解决方案时我遇到了以下冲突:

Error NU1107: Version conflict detected for Xamarin.Android.Support.Compat. Install/reference Xamarin.Android.Support.Compat 28.0.0.3 directly to project ProjectWorker to resolve this issue. 
 ProjectWorker -> Xamarin.Android.Arch.Work.Runtime 1.0.0.3 -> Xamarin.Android.Arch.Persistence.Room.Runtime 1.1.1.3 -> Xamarin.Android.Support.Core.Utils 28.0.0.3 -> Xamarin.Android.Support.Compat (= 28.0.0.3) 
 ProjectWorker -> AnotherProjectUsedByProjectWorker -> ProjectAuth -> Xamarin.Firebase.Auth 71.1605.0 -> Xamarin.GooglePlayServices.Basement 71.1620.0 -> Xamarin.Android.Support.v4 28.0.0.1 -> Xamarin.Android.Support.Compat (= 28.0.0.1). (NU1107)

解决方案 1

将 Xamarin.Android.Support.Compat 28.0.0.3 直接安装到项目 ProjectWorker 的建议失败,并出现与上述相同的错误。

解决方案 2

降级 Xamarin.Android.Arch.Work.Runtime 不再起作用。只有版本 1.0.0.0。

解决方案 3

我删除了 AnotherProjectUsedByProjectWorker 对 ProjectAuth 的引用,以打破 ProjectWorker -> AnotherProjectUsedByProjectWorker -> ProjectAuth 的链条。这在尝试构建 Android 项目时会导致以下错误:

java.lang.IllegalArgumentException: already added: Lcom/google/common/util/concurrent/ListenableFuture;

问题是否与 Xamarin.Firebase.Auth 和 Xamarin.Android.Arch.Work.Runtime 分别使用的 Xamarin.Android.Support.Compat 版本有关?是唯一等待 Xamarin.Firebase.Auth 更新的解决方案(最新更新是 9 个月前)还是有人知道任何其他解决方法?

提前致谢。

标签: firebasexamarinxamarin.formsfirebase-authenticationandroid-workmanager

解决方案


我也确实遇到了这个问题,尝试安装 NuGets -->Xamarin.Android.Arch.*

我的项目有点旧,在迁移 el 项目之后,我不得不安装 nutget -->Xamarin.Android.Support.v4

安装 Nutget 后,我​​已经可以安装 nutgetsXamarin.Android.Arch.*


推荐阅读