Prism.Unity 6.3.0与Xamarin.Forms的Android/iOS版本兼容问题咨询
解决Prism.Unity与Xamarin.iOS/Android版本不兼容的问题
嗨,这个问题的核心原因很明确:你使用的Prism.Unity 6.3.0版本过于老旧,它完全不支持你当前项目里的Xamarin.iOS 10和MonoAndroid 8.1这些较新的平台版本。
从你贴出的错误信息也能直接验证这一点:
NU1202: Package Prism.Unity 6.3.0 is not compatible with xamarinios10 (Xamarin.iOS,Version=v1.0). Package Prism.Unity 6.3.0 supports:
- net45 (.NETFramework,Version=v4.5)
- uap10.0 (UAP,Version=v10.0)
NU1202: Package Prism.Unity 6.3.0 is not compatible with monoandroid81 (MonoAndroid,Version=v8.1). Package Prism.Unity 6.3.0 supports:- net45 (.NETFramework,Version=v4.5)
- uap10.0 (UAP,Version=v10.0)
这个版本的Prism.Unity是多年前发布的,当时Prism对Xamarin Forms的支持体系和现在完全不同,它只适配了.NET Framework 4.5和早期的UWP平台,根本没有考虑后续更新的Xamarin移动平台版本。
解决方案
你只需要升级到针对Xamarin Forms的最新Prism.Unity包即可,步骤如下:
- 先在所有项目(.NET Standard、Droid、iOS、UWP)中卸载旧的
Prism.Unity包 - 安装专门为Xamarin Forms设计的
Prism.Unity.FormsNuGet包,选择当前的稳定版(目前已经更新到9.x系列),这个版本完全支持现代的Xamarin.iOS、Android、UWP以及.NET Standard项目 - (可选)如果你是从头搭建项目,推荐直接使用Visual Studio中的Prism项目模板创建,模板会自动配置好所有正确的依赖和项目结构,避免手动装包踩版本兼容的坑
另外要注意,确保你的Xamarin Forms版本也是当前官方支持的稳定版,Prism的新版本会和最新的Xamarin Forms版本保持兼容。
内容的提问来源于stack exchange,提问作者NSouth
相关产品推荐
相关产品推荐

