ios - 未找到 Cocoapods 框架 - 混合 Objective C 和 Swift pod

标签 ios swift cocoapods onesignal

tl;dr; 如何在 podfile 中同时使用旧 pod(什么不应该使用 use_frameworks!)和新 pod?
我有工作 podfile:

platform :ios, '8.0'
use_frameworks!

    target 'myApp' do
        pod 'Alamofire', '1.3.1'
        pod 'SwiftyJSON', '~> 2.2.1'
    end

然后我根据文档 link 添加了 OneSignal pod
所以我的pod文件改为:

platform :ios, '8.0'
use_frameworks!

target 'myApp' do
    pod 'Alamofire', '1.3.1'
    pod 'SwiftyJSON', '~> 2.2.1'
    pod 'OneSignal'
end

我更新了 pod 并运行构建 - 出现错误:

ld: framework not found OneSignal
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我检查了 OneSignal pod,它与其他 pod 相比看起来有所不同: enter image description here
那可能是因为它是旧式的 Objective-C 框架。
我可以手动将此框架添加到我的项目中,但我想知道如何使其与 cocoapods 正常工作? 我认为这个问题与我的问题有关https://github.com/CocoaPods/CocoaPods/issues/3338


更新
我目前使用的是 Xcode 6.4

最佳答案

您使用的 Xcode 版本是什么?

如果更新到 Alamofire 和 SwiftyJSON 的最新发行版本并使用 Xcode 7 进行构建,它应该可以修复您的构建错误。

platform :ios, '8.0'
use_frameworks!

target 'myApp' do
    pod 'Alamofire', '2.0.2'
    pod 'SwiftyJSON', '~> 2.3.0'
    pod 'OneSignal'
end

关于ios - 未找到 Cocoapods 框架 - 混合 Objective C 和 Swift pod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32805975/

相关文章:

ios - iOS通讯录中的用户信息

ios - YouTube嵌入式播放器无法在物理设备上运行

ios - 注释在动画结束前不可点击

Swift UITextField 目标 Action 作为闭包,不删除目标 Action 的问题

swift - 如何在 Swift 中创建一个 NSMutableDictionary?

ios - Swift - PageViewController 跳转到页面

ios - 什么是 *.PODSPEC 文件?

ios - 如何观察 UIProgressView 的数据加密/解密?

swift - 指定的路径 `DemoView.podspec`不指向现有的podspec文件

ios - 什么是 CocoaPods "(unused)"