我正在创建一个CocoaPod,我想从中导入Firebase。我收到错误:
“没有这样的模块'Firebase'”
当我将import Firebase
添加到我的广告连播中的Swift文件时。
我的CocoaPod Foo的pod规范文件Foo.podspec
包含:
s.dependency 'Firebase', '~> 3.6'
答案 0 :(得分:2)
Firebase为pod的最新版本制作的podspec中的模块映射似乎存在问题(请参阅https://github.com/CocoaPods/CocoaPods/issues/6138)。
我目前正在开发一个基于Firebase的聊天系统,我已经将其抽象为私有CocoaPod。如果我删除了我的代码/ podspec中的所有Firebase痕迹,则所有其他Pod都可以完美导入。我不知道在修复之前我们还能做很多事情。
干杯!
答案 1 :(得分:1)
我最近碰到了同样的问题和我解决的解决方案,以便我可以在我的开发窗格内部使用firebase以及使用它的应用程序是在Xcode中设置firebase sdk以便可以在与系统框架相同的方式。
设置您的pod规范,以便它知道框架的位置以及添加一些必需的依赖项。
# Specify what libraries this depends on.
s.libraries = [
'c++', # FirebaseAnalytics.
'icucore', # FirebaseDatabase.
'sqlite3', # FirebaseAnalytics.
'z', # FirebaseAnalytics.
]
# Specify what frameworks this depends on.
s.frameworks = [
'AddressBook', # FirebaseAnalytics.
'AdSupport', # FirebaseAnalytics.
'CFNetwork', # FirebaseDatabase.
'SafariServices', # FirebaseAnalytics.
'Security', # FirebaseAnalytics, FirebaseAuth, FirebaseDatabase.
'StoreKit', # FirebaseAnalytics.
'SystemConfiguration', # FirebaseAnalytics, FirebaseDatabase.
'FirebaseAnalytics',
'FirebaseInstanceID',
'FirebaseCore',
'FirebaseCoreDiagnostics',
'FirebaseNanoPB',
'GoogleToolboxForMac',
'FirebaseAuth',
'GTMSessionFetcher',
'FirebaseDatabase'
]
s.xcconfig = { 'FRAMEWORK_SEARCH_PATHS' => '/Applications/Xcode.app/Contents/Developer/Library/Frameworks/**' }
# LDFLAGS required by Firebase dependencies.
s.pod_target_xcconfig = {
'OTHER_LDFLAGS' => '$(inherited) -ObjC',
}
此示例仅使用firebase Analytics,Auth和Database,但我确信其他框架也可以添加。它不是最好的解决方案,但它适用于我的情况。