flutter如何上传crashlytics符号文件
在Flutter项目中集成Crashlytics时,如何正确上传符号文件以便查看崩溃日志的堆栈跟踪?我已经按照官方文档配置了Firebase和Crashlytics,但崩溃报告中仍然显示混淆的代码,无法定位具体问题。是否需要手动执行上传命令?在iOS和Android平台上分别该如何操作?
2 回复
在Flutter中上传符号文件到Crashlytics,需在android/app/build.gradle中添加Firebase插件,并配置firebaseCrashlytics。iOS端需在Xcode中启用自动上传符号文件功能。
更多关于flutter如何上传crashlytics符号文件的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
在 Flutter 中上传 Crashlytics 符号文件,主要涉及 Android 和 iOS 平台的配置。以下是具体步骤:
Android 平台
-
配置 Firebase:
- 在
android/app/build.gradle中添加依赖:dependencies { implementation 'com.google.firebase:firebase-crashlytics:18.2.13' } - 在
android/build.gradle中启用 Crashlytics Gradle 插件:buildscript { dependencies { classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1' } } - 在
android/app/build.gradle中应用插件:apply plugin: 'com.google.firebase.crashlytics'
- 在
-
自动上传符号文件:
- 在
android/app/build.gradle的buildTypes中启用上传:android { buildTypes { release { firebaseCrashlytics { nativeSymbolUploadEnabled true } } } } - 构建 Release 版本时,符号文件会自动上传。
- 在
iOS 平台
-
配置 Firebase:
- 在
ios/Podfile中添加:pod 'Firebase/Crashlytics' - 运行
pod install。
- 在
-
上传符号文件:
- 在 Xcode 中,添加 Run Script 构建阶段:
- 脚本路径:
"${PODS_ROOT}/FirebaseCrashlytics/run" - 输入文件:
${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME} ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist $(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)
- 脚本路径:
- 构建应用时,符号文件会自动上传。
- 在 Xcode 中,添加 Run Script 构建阶段:
注意事项
- 确保已正确配置
google-services.json(Android)和GoogleService-Info.plist(iOS)。 - 对于 Flutter 的 Dart 异常,需手动调用
FirebaseCrashlytics.instance.recordError捕获。
完成以上配置后,符号文件会在构建 Release 版本时自动上传至 Firebase Crashlytics。

