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

Kir*_*iya 7 ios firebase crashlytics flutter

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

Upload 1 missing dSYM required to process 4 crashes

为此,我尝试了firebase文档

获取混淆的崩溃报告

此外,我还按照步骤使用flutter构建iOS存档

准备发布iOS应用

尽管如此,firebase门户上还是有同样的问题

Upload 1 missing dSYM required to process 4 crashes

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

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

谢谢,社区

Emm*_*een 12

在准备发布我的应用程序时,我采取以下步骤导出、上传和获取 dSYM:

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


Bik*_*ram 9

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

I. 打开 Xcode > Targets > MyProjectName > Build Phases

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

  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

三、视觉效果 在此处输入图片说明 在此处输入图片说明 在此处输入图片说明 在此处输入图片说明

  • 注意:它是“${PROJECT_DIR}/Runner/GoogleService-Info.plist”而不是“${PROJECT_DIR}/MyProjectName/GoogleService-Info.plist”(您的屏幕截图很好) (4认同)
  • 这不再有效,因为您使用 flutterfire CLI 初始化 firebase。由于不再使用 `GoogleService-Info.plist`,我尝试使用 `-gsp "[Path to file]"` 与 `-ai "[App ID]"` 交换。但我仍然收到以下错误:“错误:无法从构建环境中获取 Google 服务文件中的 GOOGLE_APP_ID”。有谁知道我该如何解决这个问题? (4认同)
  • 好吧,我自己想出来了。您还必须将 `-ai "[App ID]"` 添加到第一个脚本中 (3认同)

gul*_*yuz 8

Fastlane也可以将其自动化,作为发布过程的一部分。这是一个可以进入您的示例Fastfile

platform :ios do
  desc "Upload symbols to Crashlytics"
  lane :toCrashlytics do
    upload_symbols_to_crashlytics
  end
end
Run Code Online (Sandbox Code Playgroud)

然后你就可以fastlane ios toCrashlytics运行它了。

请参阅此链接了解更多详细信息。


Nir*_*hah 7

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

Pods/FirebaseCrashlytics/upload-symbols -gsp /path/to/GoogleService-Info.plist -p ios build/Runner.xcarchive/dSYMs
Run Code Online (Sandbox Code Playgroud)

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