我今天升级到Xcode 7 / Swift 2.0。我的项目正在使用CocoaPods,我正在导入POD文件中的所有AWS相关文件,我已经设置了我的桥接头,并导入亚马逊告诉我的所有文件。在升级到Swift 2.0之前,AWS相关的一切工作正常(即将图像上传到S3存储桶)
升级后,我无法在项目中创建AWSS3TransferManagerUploadRequest实例。这一行:
let uploadRequest = AWSS3TransferManagerUploadRequest()
产生并出错。
(Use of unresolved identifier 'AWSS3TransferManagerUploadRequest')
为什么会发生这种情况?我的AppDelegate.Swift中的AWSCognitoCredentialsProvider / AWSServiceConfiguration代码正常工作
答案 0 :(得分:3)
找到解决方案 - 由于我使用" use_frameworks!",CocoaPods将所有pod从静态库转换为framerworks。
"通常当您将Objective-C代码导入Swift时,您可以通过在项目的“桥接标题”中包含包含该代码的文件的标题来实现。这确实是你如何包含静态库中的代码(你的pod曾经是这样的。)
但这不是你从框架中导入Objective-C代码的方式。"
所以我只是添加了
import AWSS3
到我的控制器,一切都恢复正常。
在此处找到解决方案:http://rogueleaderr.com/post/115372471213/unresolved-identifier-in-swift-when-importing