无法通过NuGet安装Xamarin.GooglePlayServices.Maps的问题求助
解决Xamarin.GooglePlayServices.Maps安装时的Support库版本冲突问题
我来帮你搞定这个头疼的版本冲突问题,这在Xamarin项目里算是蛮常见的情况,咱们一步步来解决:
核心问题分析
你遇到的本质是Xamarin.Android.Support系列库版本不统一:Xamarin.GooglePlayServices.Maps 60.1142.0要求Xamarin.Android.Support.Compat >=26.0.2,但你的项目里Xamarin.Android.Support.Design 25.4.0.2强制要求Compat版本为25.4.0.2,两个包的版本要求“打架”了,所以NuGet没法完成安装。
具体解决方案
1. 统一所有Support库的版本(最关键)
Xamarin的Support库有个硬性要求:所有带Xamarin.Android.Support前缀的包,版本必须完全一致。所以咱们得先把Design包升级到和Maps要求匹配的版本:
- 打开NuGet包管理器(右键项目 → Manage NuGet Packages)
- 在「已安装」标签下找到
Xamarin.Android.Support.Design,把它升级到26.0.2(或者更高的、和Maps兼容的版本) - 升级完成后,再重新安装
Xamarin.GooglePlayServices.Maps 60.1142.0
如果习惯用命令行,打开Package Manager Console执行:
Update-Package Xamarin.Android.Support.Design -Version 26.0.2 Install-Package Xamarin.GooglePlayServices.Maps -Version 60.1142.0
2. 清理NuGet缓存(解决潜在的缓存问题)
有时候本地缓存的旧包会干扰安装流程,清理一下缓存再试试:
- 打开Visual Studio的「Tools」→「NuGet Package Manager」→「Package Manager Settings」
- 在「General」选项里点击「Clear All NuGet Cache(s)」
- 重启Visual Studio后再重新执行安装操作
3. 手动编辑项目文件(极端情况的兜底方案)
如果上面的方法都没效果,可以直接手动修改项目文件来统一版本:
- 找到
Prueba.Android.csproj文件,用文本编辑器打开 - 搜索所有包含
Xamarin.Android.Support.的节点(比如<PackageReference>或者<Package>),把它们的版本号都改成26.0.2 - 保存文件后,回到Visual Studio重新加载项目,再尝试安装Maps包
额外注意事项
Xamarin.GooglePlayServices系列包和Support库的版本是一一对应的,比如60.x版本的Maps就需要搭配26.x的Support库,后续安装相关包时尽量保持版本匹配,避免再次出现冲突。
内容的提问来源于stack exchange,提问作者Imrik
相关产品推荐
相关产品推荐

