我最近决定更新我的Xamarin工作区中的所有内容,包括所有nuget包和Xamarin表单。
我首先安装了所有最新的Xamarin.android.support软件包,这些软件包与当前版本的Xamarin表单发生了冲突,所以,决定我还需要更新Xamarin表单,删除它,安装所有其他软件包(工作可爱),现在我想再次重新安装Xamarin表格,但我收到了:
无法解析依赖项。 'Xamarin.Android.Support.Design 23.4.0.1'与'Xamarin.Forms 2.3.0.107约束:Xamarin.Android.Support.Design(= 23.3.0)'不兼容。
有什么建议吗?
答案 0 :(得分:14)
我在这里Xamarin Forums引用了James Montemagno。
Xamarin.Forms锁定了一个非常特定的支持版本 图书馆和谷歌播放服务。你无法更新它们,因为 Xamarin.Forms与它们不兼容,因为它需要它 重新编译。
Xamarin.Android.Support.v4(= 23.0.1.3)Xamarin.Android.Support.Design (= 23.0.1.3)Xamarin.Android.Support.v7.AppCompat(= 23.0.1.3) Xamarin.Android.Support.v7.CardView(= 23.0.1.3) Xamarin.Android.Support.v7.MediaRouter(= 23.0.1.3)
参见= 23.0.1.3,这意味着它只与之兼容 版本号。这就是NuGet的工作原理。当Xamarin.Forms 更新这些包将自动更新。
表单与特定版本的Android库“链接”,因此可以保证它可以一起工作。此时,Xamarin.Forms(stable)尚未更新,无法使用最新的Android支持包。所以你可能想要使用较旧版本的Forms,或者检查是否有一个Forms预发布版本已经引用了较新的Android支持库。
当然;在生产环境中不建议使用这些。
他们在官方FAQ
中添加了它答案 1 :(得分:3)
您无法同时更新Xamarin.Forms和Xamarin.Android。因为它与版本有依赖性问题。 首先,选择仅Xamarin.Forms 2.3.0.107并更新。 之后,选择其余的Xamarin.Android.support列表并更新。
答案 2 :(得分:1)
我极力建议使用Xamarin.Droid和Xamarin.iOS 1年的经验,只将Xamarin.Forms更新到最新版本,并忽略其他Xam.Support库,除非极其必要的bug修复你需要的东西。< / p>
原因#1:未经Microsoft完全测试。
原因#2:您可能需要花费数小时来配置和修复引用e版本兼容性。
答案 3 :(得分:1)
根据我自己的经验,我建议:
答案 4 :(得分:0)
对于解决方案,请按照以下步骤进行操作
参考:https://xamarininterviewquestion.blogspot.in/2016/12/upgrade-nuget-xamarinandroidsupportdesi.html
答案 5 :(得分:0)
从Xamarin.Forms 2.3.4 开始,您可以手动更新所有Xamarin.Android.Support NuGet包。 条件是您项目的目标框架和目标Android版本选项(如果您不知道我是什么&#39) ;我正在谈论查看此页面:Understanding Android API Levels)至少设置为Android 7.0 ,即API 24或更高版本。
官方Xamarin文档也已更新:Xamarin Forms Troubleshooting