我在新的 Firebase 中遇到了一个奇怪的错误,我无法弄清楚。我已启用 Firebase Analytics 和 Crashlog,并且如文档所述,我在
FIRApp.configure()
中调用 didFinishLaunchingWithOptions
。
但是当我第一次运行该应用程序时,它有时会崩溃,但没有给出任何详细信息。我只能从 firebase 的崩溃部分提供这个(总是相同的)崩溃日志。有人在使用新的 Firebase 时遇到类似问题吗?
___ZN3ggl10GLRenderer5frameEPNS_12RenderTargetEPNS_11RenderQueueE_block_invoke_2 + 4103720
___ZN3ggl10GLRenderer5frameEPNS_12RenderTargetEPNS_11RenderQueueE_block_invoke_2 + 4103704
___ZN3ggl10GLRenderer5frameEPNS_12RenderTargetEPNS_11RenderQueueE_block_invoke + 4102664
_dispatch_call_block_and_release + 5304
_dispatch_client_callout + 5240
_dispatch_queue_drain + 54460
_dispatch_queue_invoke + 20348
_dispatch_root_queue_drain + 62348
_dispatch_worker_thread + 71984
_pthread_body + 15140
_pthread_start + 14984
thread_start + 4132
更新
我现在发现只有在加载的第一个视图包含 MKMapView 时才会发生此崩溃。将初始视图更改为例如UITableView 修复了崩溃问题。我将联系 firebase 支持。
将您刚刚下载的 GoogleService-Info.plist 文件移动到 Xcode 项目的根目录中,并将其添加到 所有目标。
您能否发布带有符号的崩溃报告,以便更容易调试? 根据这篇post,可能存在与 Firebase 无关的错误。您可以尝试一下并让我们知道它是否解决了问题吗?
在 XCode 中,转到“产品”>“方案”>“编辑方案...”
选择左侧的“运行”选项卡。 选择“选项”子选项卡 顶。
将“GPU 帧捕获”从“自动启用”更改为 “OpenGL ES”为“金属”或“禁用”。
这会禁用 OpenGL ES 帧捕获,这不是很好,但允许您继续调试 你的构建。
在 Xcode 中打开您的项目,然后将
GoogleService-Info.plist
从 Finder 拖到项目导航器中项目的根目录中,拖动时确保选中“如果需要则复制项目”并选择目标项目名称,然后单击“完成” “(然后 GoogleService-Info.plist 应该显示在您可以看到 AppDelegate、Info.plist 等的同一目录中)。然后单击文件 GoogleService-Info.plist 并确保在右侧的文件检查器中,在“目标成员资格”下选择了您的项目名称。