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

时间:2020-04-14 10:57:14

标签: ios objective-c firebase crash config

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

这里的问题是,在配置Firebase的代码行(ObjC-> [FIRApp configure];)上的每次新启动时,应用程序都会崩溃。我已经看到了一些类似的帖子,但是除非我丢失了某些内容,否则它们对我来说都无济于事。

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

enter image description here

以下是Podfile中每个项目/目标的定义的窗格。

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

我已经在应用程序委托中添加了Firebase配置方法,如Google文档中所示。

enter image description here

此外,我已经按照Google文档的说明在项目中添加了GoogleService-Info.plist文件。

enter image description here

但是该应用程序始终在didFinishLaunchingWithOptions的{​​{1}}方法中调用的Firebase配置上崩溃。当我在卡住的跟踪中更深入地输入时,我在Firebase库中用红色矩形标记的AppDelegate代码行上崩溃了:

enter image description here

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

364th

这里可能是什么问题?感谢您的帮助和解答。

p.s。对不起,很长的帖子。

1 个答案:

答案 0 :(得分:3)

回答我自己的问题。我基本上通过从Firebase/Core pod中的每个项目/目标中删除Podfile并添加了与主应用程序目标相关的所有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