Xcode14.0.1中GoogleUserMessagingPlatform版本兼容错误修复求助
修复GoogleUserMessagingPlatform部署版本不匹配问题
检查所有Target的部署版本
- 打开Xcode,在左侧项目导航栏选中项目根节点(不是单个Target)
- 切换到「Info」标签页,逐个核对列表里的所有Target(包括主App、UITests、UIApplicationTests,以及扩展、Widget这类子Target),确保它们的「iOS Deployment Target」都设为iOS 12.0以上(直接统一设为iOS 16即可)
- 也可以在「Build Settings」里搜索「iOS Deployment Target」,查看Debug、Release等所有配置下的所有Target,避免遗漏仍设为iOS 11的项
核对SPM依赖的配置细节
- 选中项目,切换到「Package Dependencies」标签页
- 找到GoogleAds相关的包,右键选择「Show Package Contents」,查看它的
Package.swift确认最低要求是iOS 12(这是包的固定要求,无需修改,只要你的项目满足即可) - 若你的项目本身是用SPM管理的,打开自己的
Package.swift,确保target的platforms明确指定了.iOS(.v16)
清理缓存并重启Xcode
- 按
Cmd+Shift+K清理构建文件夹 - 关闭Xcode,手动删除
~/Library/Developer/Xcode/DerivedData目录下的所有缓存内容 - 重新打开Xcode,重新构建项目
手动约束SPM包的平台版本(可选)
如果以上步骤无效,试试在自己项目的Package.swift里给依赖包添加平台约束:
dependencies: [ .package(url: "https://github.com/googleads/swift-package-manager-google-mobile-ads.git", from: "10.0.0"), ], targets: [ .target( name: "你的AppTarget名称", dependencies: [.product(name: "GoogleMobileAds", package: "swift-package-manager-google-mobile-ads")], platforms: [.iOS(.v16)] ) ]
内容的提问来源于stack exchange,提问作者Ufuk Köşker
相关产品推荐
相关产品推荐

