Ios FirebaseApp.configure()在启动时使应用程序崩溃

Ios FirebaseApp.configure()在启动时使应用程序崩溃,ios,objective-c,firebase,crash,config,Ios,Objective C,Firebase,Crash,Config,我正在做一个iOS项目,它使用Firebase进行分析、crashlytics和远程配置获取。对于依赖关系管理,我使用cocoapods,项目中Firebase的当前版本是最新的-6.22.0 这里的问题是,应用程序在配置Firebase的代码行上的每次新启动时都会崩溃(ObjC->[FIRApp configure];)。我已经看到了一些类似的帖子,但没有一篇对我有帮助,除非我遗漏了什么 项目的部分结构如下图所示。红色表示主目标和应用程序的主xcodeproj文件。蓝色表示自定义框架的xcod

我正在做一个iOS项目,它使用Firebase进行分析、crashlytics和远程配置获取。对于依赖关系管理,我使用cocoapods,项目中Firebase的当前版本是最新的-
6.22.0

这里的问题是,应用程序在配置Firebase的代码行上的每次新启动时都会崩溃(ObjC->
[FIRApp configure];
)。我已经看到了一些类似的帖子,但没有一篇对我有帮助,除非我遗漏了什么

项目的部分结构如下图所示。红色表示主目标和应用程序的主
xcodeproj
文件。蓝色表示自定义框架的
xcodeproj
文件,其中包含用于分析日志记录的帮助程序,包括
FirebaseAnalytics
包装,这意味着它有其依赖项
pod Firebase/analytics
。此自定义框架用于标记为红色的主应用程序目标。(在
pod安装之后
我总是打开
xcworkspace
,所以这是在
xcworkspace
中)

下面是为
Podfile
中的每个项目/目标定义的pod

target 'TheApp' do
    platform :ios, '11.0'
    project 'TheApp/TheApp.xcodeproj'
    use_frameworks!
    pod 'Firebase/Auth'
    pod 'Firebase/Core'
    pod 'Firebase/Messaging'
    pod 'Firebase/RemoteConfig'
end

target 'TheCustomFramework' do
    platform :ios, '11.0'
    project 'TheCustomFramework/TheCustomFramework.xcodeproj'
    use_frameworks!
    pod 'Firebase/Analytics'
end
我在app delegate中添加了Firebase配置方法,如谷歌文档所示

此外,正如谷歌文档所述,我在项目中添加了
GoogleService Info.plist
文件

但该应用程序在
AppDelegate
中的
didfishlaunchingwithoptions
方法调用的Firebase配置上不断崩溃。当我在卡住的轨迹中进入更深的位置时,我在Firebase库中标有红色矩形的
364
代码行上崩溃:

Xcode控制台中此崩溃的异常消息为:

Terminating app due to uncaught exception 'com.firebase.installations', reason: 'The default FirebaseApp instance must be configured before the defaultFirebaseApp instance can be initialized. One way to ensure that is to call `[FIRApp configure];` (`FirebaseApp.configure()` in Swift) in the App Delegate's `application:didFinishLaunchingWithOptions:` (`application(_:didFinishLaunchingWithOptions:)` in Swift).'
这里可能有什么问题?谢谢你的帮助和回答


p、 很抱歉发了这么长的帖子。

来回答我自己的问题。我基本上解决了这个问题,从
Podfile
中的每个项目/目标中删除
Firebase/Core pod
,并添加与主应用程序目标相关的所有Firebase,包括
Firebase/Analytics pod
(这意味着从其他每个项目/目标中删除它)

运行
pod install
后,我将使用FirebaseAnalytics的所有文件从自定义框架移动到主项目(目标)。现在一切正常,并调用
[FIRApp configure]不会使应用程序崩溃

Podfile
现在看起来像这样:

target 'TheApp' do
    platform :ios, '11.0'
    project 'TheApp/TheApp.xcodeproj'
    use_frameworks!
    pod 'Firebase/Analytics'
    pod 'Firebase/Auth'
    pod 'Firebase/Messaging'
    pod 'Firebase/RemoteConfig'
end

target 'TheCustomFramework' do
    platform :ios, '11.0'
    project 'TheCustomFramework/TheCustomFramework.xcodeproj'
    use_frameworks!
end

如果这是问题中Swift标记指示的Swift项目,则不是ObjC。删除
[FIRApp配置]
并将其替换为
FirebaseApp.configure()
。不过,从屏幕截图上看,它可能是ObjC。最好将代码和结构包含为文本,而不是链接和图像。这样,如果答案中需要它们,就可以复制和粘贴它们。最后,图像是不可搜索的,这可能会妨碍未来读者定位问题。这不是一个Swift项目。有些代码是用ObjC编写的,有些是用Swift编写的。我已经更新了标签。您可能想回顾一下入门指南。您的podfile与文档不匹配,不再需要Firebase iOS库Firebase/Core。。我也没有看到导入Firebase看起来你有两个不同的目标/项目?如果你能进一步澄清,我们可能会提供帮助。我已经从项目中删除了
Firebase/Core pods',仍然得到与以前相同的结果。此外,我还添加了导入Firebase;`进入文件。太棒了。很高兴我的评论有帮助!谢谢兄弟。你做到了。