Firebase Crashlytics 集成停留在“我们将监听您的应用程序与我们的服务器通信”。 iOS
Posted
技术标签:
【中文标题】Firebase Crashlytics 集成停留在“我们将监听您的应用程序与我们的服务器通信”。 iOS【英文标题】:Firebase Crashlytics integration stucked at 'We'll be listening for your app to communicate with our servers.' iOS 【发布时间】:2020-04-01 09:30:13 【问题描述】:我正在尝试集成 Crashlytics,我之前也集成过。在我为测试它而创建的示例项目中,它工作正常。但在我的实际项目中,它停留在第 3 步“我们将监听您的应用程序与我们的服务器进行通信。”
我已完成所有步骤,包括运行脚本
"$PODS_ROOT/Fabric/run"
还尝试使用 DSYM 文件将调试信息格式更改为 DWARF。但没有任何工作。如果我集成到示例应用程序中,这一切都有效。
下面是我在项目中使用的 pod 文件列表。
谁能帮我解决这个问题。我从 2 天开始就被困在这里。
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'MyProject' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
pod 'TPKeyboardAvoidingSwift'
pod 'GoogleMaps'
pod 'GooglePlaces'
pod 'XLPagerTabStrip', '~> 9.0.0'
pod 'STPopup'
pod 'Alamofire'
pod 'STRatingControl'
pod 'Hero'
pod 'SDWebImage', '~> 5.0'
pod 'RxSwift', '~> 4.0'
pod 'RxCocoa', '~> 4.0'
pod 'RealmSwift'
pod 'SDWebImage', '~> 5.0'
pod 'MaterialComponents/Snackbar'
pod 'GIFProgressHUD'
pod 'MBProgressHUD', '~> 1.2.0'
pod 'GPUImage'
pod 'Firebase/Messaging'
pod 'Firebase/Analytics'
pod 'Fabric'
pod 'Crashlytics'
target 'MyProjectTests' do
inherit! :search_paths
# Pods for testing
end
target 'MyProjectUITests' do
inherit! :search_paths
# Pods for testing
end
end
【问题讨论】:
你为什么使用 Crashitycs?将于 2020 年 5 月 4 日关闭 没有 Fabric 会关闭,谷歌文档中提到我们需要使用它,因为 Fabric 将被 firebase crashlytics 取代。 firebase.google.com/docs/crashlytics/… 【参考方案1】:我认为这是一个迁移的应用程序,因为您使用的是 Fabric 依赖项。您的应用要么未发送构建和运行事件,要么在管道中陷入非活动状态。如果您使用 Xcode 进行测试,我建议您启动您的应用程序,将其关闭,然后从实际的虚拟设备仪表板中打开它。这将确保构建和运行事件被正确发送到端点。
但是,如果我的上述建议不起作用,那么您需要写信给 support(at)fabric(dot)io,以便他们可以要求您提供 AppDelegate 初始化语句和 info.plist 以确认问题可能是什么.
【讨论】:
感谢@Oleg Kodysh,我尝试了您的解决方案,但它不起作用。我想我现在需要写信支持 你是如何解决这个问题的?我也有同样的问题。 您是否尝试过导致测试崩溃并查看是否有帮助? (firebase.google.com/docs/crashlytics/test-implementation) 你是怎么解决这个问题的?我也有同样的问题。【参考方案2】:我也遇到过同样的问题和更多的研究,然后尝试解决了这个问题。
请按照以下步骤成功配置 Firebase Crashlytics。
-
卸载 Crashlystics pod,例如 pod 'Firebase/Crashlytics'、pod 'Firebase/Analytics'
从构建设置中删除运行脚本
从 Firebase 控制台中删除项目
在 Firebase 控制台上创建新项目
配置项目名称、Bundle ID 等设置
确保小包 ID 甚至是您的 Xcode 驼峰式,例如您的包 ID com.DemoFirebase.app 然后您需要在 firebase configure com.demofirebase.app 中设置
在 pod 文件中添加 pod 'Firebase/Analytics'
在命令中执行脚本 pod install
清理、构建并运行它将与 firebase 通信的项目
在 appdelegate.swift 中添加 FirebaseApp.configure()
清理、构建并运行它将与 firebase 通信的项目
添加像 pod 'Firebase/Crashlytics' 这样的 pod
在构建设置中添加新的运行脚本
清理、构建并运行它将与 firebase 通信的项目
在 Firebase 信息中心启用 Crashlytics
使用此代码测试虚拟崩溃:https://firebase.google.com/docs/crashlytics/test-implementation?authuser=4
恭喜您的 Crashlytics 配置成功
我希望以上步骤对您的项目有所帮助并减少更多的研究时间
感谢并点击投票按钮
编码愉快!
【讨论】:
以上是关于Firebase Crashlytics 集成停留在“我们将监听您的应用程序与我们的服务器通信”。 iOS的主要内容,如果未能解决你的问题,请参考以下文章
将 Firebase Crashlytics 与 Prometheus 集成
集成 firebase crashlytics 17.0.1 时清单合并失败
如何将我的应用与 Firebase Crashlytics 集成?依赖问题