如何上传使用Flutter开发的dsyms文件?

时间:2019-04-16 13:55:59

标签: ios firebase flutter crashlytics

我正在开发一个具有Flutter支持的跨平台应用程序。我集成了Firebase Crashlytics,用于崩溃报告。在我需要检查报告之前,会出现一条错误消息

Upload 1 missing dSYM required to process 4 crashes

为此,我尝试了Firebase文档

Get deobfuscated crash reports

此外,我还遵循了用flift构建iOS存档的步骤

Preparing an iOS App for Release

仍然,firebase门户上存在相同的问题

Upload 1 missing dSYM required to process 4 crashes

我尝试了很多次,但还没有完成。

如果有人有想法,请帮助我解决此问题。

感谢社区

4 个答案:

答案 0 :(得分:6)

让您的 Xcode 在您运行/构建应用程序时自动上传它。

我。打开 Xcode > 目标 > MyProjectName > 构建阶段

添加由每个脚本组成的两个脚本(使用 + 符号)

  1. "${PODS_ROOT}/FirebaseCrashlytics/run"

  2. "${PODS_ROOT}/FirebaseCrashlytics/upload-symbols" -gsp "${PROJECT_DIR}/MyProjectName/GoogleService-Info.plist" -p ios "${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}"

<块引用>

重要:确保将 MyProjectName 替换为您的项目名称,但保持原样。

二。还要确保在 Targets > MyProjectName > Build settings

中检查这些选项

调试信息格式设置为带有dSYM文件的DWARF

三。视觉效果 enter image description here enter image description here enter image description here enter image description here

答案 1 :(得分:2)

在准备发布应用程序时,我将按照以下步骤导出,上传并获取dSYM:

  1. 在终端中,我运行'flutter build ios --release'
  2. 在xCode中打开iOS项目,然后将设备切换到“通用iOS设备”
  3. 从顶部菜单“产品”>“存档”
  4. 完成后,管理器窗口将显示您的存档版本。您也可以通过Window>整理器
  5. 手动打开此窗口
  6. 选择要上传到iTunes Connect的版本,然后点击Distribute App,然后按照以下步骤操作
  7. 上传完成后,右键单击管理器窗口中的内部版本,然后单击“在Finder中显示”
  8. 您应该在finder中看到一个存档文件,右键单击它,然后单击“显示包内容”。
  9. 内部应该有一个名为dSYM的文件夹,您可以将其压缩并发送到需要的位置

答案 2 :(得分:2)

您可以在发布过程中使用Fastlane将其自动化。 这是一个可以进入您的Fastfile

的示例
platform :ios do
  desc "Upload symbols to Crashlytics"
  lane :toCrashlytics do
    upload_symbols_to_crashlytics
  end
end

然后您可以运行fastlane ios toCrashlytics来运行它。

有关更多详细信息,请参见this link

答案 3 :(得分:2)

构建 Flutter 应用程序存档(使用 Xcode)后,您可以从 Flutter 应用程序的 ios 目录(使用 Firebase 的上传工具)运行以下命令:

Pods/FirebaseCrashlytics/upload-symbols -gsp /path/to/GoogleService-Info.plist -p ios build/Runner.xcarchive/dSYMs

更改上述命令行以指向正确的 Firebase plist 文件。 -p 标志指定平台(可以是 iosmactvos)。上述命令还将查找应用的存档文件 Runner.xcarchive