我正在开发一个支持 iOS 11 及更高版本的项目,并面临下一个问题:
Compiling for iOS 11.0, but module 'AWSPredictionsPlugin' has a minimum deployment target of iOS 13.0: /Users/kostyagolenkov/Library/Developer/Xcode/DerivedData/CompilationProblem-btkpsidvptzlicfucdvwpzwadnws/Build/Products/Debug-iphonesimulator/AWSPredictionsPlugin/AWSPredictionsPlugin.framework/Modules/AWSPredictionsPlugin.swiftmodule/x86_64-apple-ios-simulator.swiftmodule
我想使用这个 sdk 并为开发板上的 iOS 13 或更高版本的用户提供新功能。但又不想失去仍在使用 iOS 11 和 iOS 12 的用户
问题是:
是否有可能以某种方式逃避导入AWSPredictionsPlugin以及在编译期间使用sdk的代码?
如您所见,我为方法
@available(iOS 13, *)
添加了 configureAmplify()
。它适用于方法。但我没有找到导入模块部分的任何解决方案。
我已经尝试过
#if canImport(AWSPredictionsPlugin)
但没有帮助。
这里是演示项目,具有可重现的问题
我遇到了同样的问题针对 iOS 10.0 进行编译,但模块的最低部署目标是 iOS 11.0
更改project.pbxproj中IPHONEOS_DEPLOYMENT_TARGET的值
您需要更新目标上的构建设置 -> AWS 插件设置为在 13.0 上构建,并且您的目标设置为 11.0 -> 修复选择目标(选择蓝色图标后应位于目标列表中)连接到项目导航器文件最顶部的应用程序名称),然后导航到“构建设置”->“IOS 部署目标”-> 将其更改为 13.0-> 希望这会有所帮助。