我正在尝试在动态框架(Cocoa Touch Framework)中使用Firebase。我已经将Firebase添加到Podfile中,如下所示:
platform :ios, '9.0'
use_frameworks!
workspace 'Test.xcworkspace'
target 'Test' do
project 'Test.xcodeproj'
end
target 'TestFramework' do
project 'TestFramework/TestFramework.xcodeproj'
# Pods for TestFramework
pod 'Firebase/Database'
pod 'Firebase/Auth'
end
我在Test目标的构建阶段设置了目标依赖项。全部根据:https://github.com/benasher44/CocoaPodsLibExample
但是,当我在应用启动期间从我的测试目标引用我的TestFramework时,我在控制台中收到此消息(对于所有Firebase类):
objc [34978]:类FIRAAppEnvironmentUtil在两者中实现 /Users/peterwarbo/Library/Developer/Xcode/DerivedData/Test-goxvmnklbfyswhdniydzbvzudcez/Build/Products/Debug-iphonesimulator/TestFramework.framework/TestFramework (0x1085858c8)和 /Users/peterwarbo/Library/Developer/CoreSimulator/Devices/43080C45-C9E9-4237-A255-5029CC4D5797/data/Containers/Bundle/Application/FCFDC439-8564-40A8-9B34-935FE222193E/Test.app/Test (0x104342938)。将使用两者之一。哪一个未定义。
应用程序崩溃了。我已经读过,这可能与Firebase是一个静态库有关。我需要解决这个问题,以便我可以使用我的不同目标使用Firebase。具体来说,我想要实现的是能够通过键盘扩展程序执行Firebase操作,因此我的主机应用程序和我的扩展程序都应该能够执行Firebase操作。
我一直试图解决这个问题一个多星期了,我还没有提出任何有效的解决方案:(
我正在使用Xcode 8.2.1,Cocoapods 1.2.0