Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Firebase和Swift Framework时崩溃_Firebase_Cocoapods - Fatal编程技术网

使用Firebase和Swift Framework时崩溃

使用Firebase和Swift Framework时崩溃,firebase,cocoapods,Firebase,Cocoapods,我使用Swift框架(Cocoa-Touch框架)将代码分割成相当独立的模块。我已经将几个外部库(带有cocoapod)导入到主应用程序和那些模块中,到目前为止没有任何问题 代码9.3 iOS 11.2 椰荚1.5 GoogleToolboxForMac(2.1.3)、Firebase(4.13.0)、FirebaseAnalytics(4.2.0)、FirebaseCore(4.0.20)、FirebaseDatabase(4.1.5)、FirebaseInstanceID(2.0.10) 但

我使用Swift框架(Cocoa-Touch框架)将代码分割成相当独立的模块。我已经将几个外部库(带有cocoapod)导入到主应用程序和那些模块中,到目前为止没有任何问题

代码9.3

iOS 11.2

椰荚1.5

GoogleToolboxForMac(2.1.3)、Firebase(4.13.0)、FirebaseAnalytics(4.2.0)、FirebaseCore(4.0.20)、FirebaseDatabase(4.1.5)、FirebaseInstanceID(2.0.10)

但是,当我在这些模块中导入Firebase时,除了在主应用程序中导入它之外,我的应用程序也会崩溃

我甚至不需要在模块中使用Firebase的任何东西;只要将pod添加到pod文件中的目标(本例中为模块
Store
),我一离开主窗口(fira_ViewDidEnglishe),应用程序就会崩溃

启动期间还有一长串问题(其他人也报告了这些问题),所有问题都类似于:

objc[36264]: Class FIRAIdentifiers is implemented in both /{$userdir}/Library/Developer/Xcode/DerivedData/FrameWork101-aekmajbumgzabmayoanlcrwtzbcs/Build/Products/Debug-iphonesimulator/Store.framework/Store (0x105478318) and /{$userdir}/Library/Developer/CoreSimulator/Devices/31D920E9-CD46-47C4-9631-503B3471AAF7/data/Containers/Bundle/Application/57B8020D-E2AB-4A06-B654-5F26F8E00AF6/FrameWork101.app/FrameWork101 (0x103b1ef80). One of the two will be used. Which one is undefined.
非常不祥的声明

有几个线程与此相关:

甚至一个文件

但他们没有一个明确的解决方案/答案,这个问题甚至在没有任何解决方案的情况下就被解决了

那么有没有一种方法可以以模块化的方式使用Firebase(使用框架)?如果是这样的话,最好的方法是什么?还是Firebase SDK入侵性太强而无法做到这一点?

谢谢

Podfile

project 'FrameWork101.xcodeproj'

platform :ios, '11.2'

target 'Binding' do
  use_frameworks!    
  pod 'ReactiveKit'
  pod 'Bond'
end

target 'Model' do
  use_frameworks!
  target 'ModelTests' do
    inherit! :search_paths
  end    
end

target 'Service' do
  use_frameworks!
  pod 'ReactiveKit'
  pod 'Bond'
end

target 'View' do
  use_frameworks!
  pod 'ReactiveKit'
  pod 'Bond'
end

target 'Store' do
  use_frameworks!
  pod 'ReactiveKit'
  pod 'Bond'
  pod 'Firebase/Database'   <---- comment this out and it works fine.
end

target 'FrameWork101' do
  use_frameworks!
  pod 'Firebase/Core'
  pod 'ReactiveKit'
  pod 'Bond'
  target 'FrameWork101Tests' do
    inherit! :search_paths
  end
end
项目“FrameWork101.xcodeproj”
平台:ios,“11.2”
目标“绑定”do
使用你的框架!
pod“反应套件”
pod“债券”
结束
目标“模型”do
使用你的框架!
目标“模型测试”是什么
继承!:搜索路径
结束
结束
目标“服务”是什么
使用你的框架!
pod“反应套件”
pod“债券”
结束
目标“查看”do
使用你的框架!
pod“反应套件”
pod“债券”
结束
目标‘商店’做什么
使用你的框架!
pod“反应套件”
pod“债券”

pod“Firebase/Database”你找到解决方案了吗@Nick?我也有同样的问题。@Franco:不幸的是我没有。每次您在不同的框架中声明它(最终成为同一应用程序的一部分),它都会崩溃。所以我选择了另一条路线:我使用了。它们有相当多的局限性,但我能够使它满足我的需要。嗯。