我正在开发一个跨平台的应用程序与Flutter的支持。我集成的firebase Crashlytics崩溃报告。之前,我需要检查报告一个错误消息来
第一个月
为此,我尝试了Firebase Docs
Get deobfuscated crash reports
此外,我还遵循了使用flutter构建iOS Archive的步骤
Preparing an iOS App for Release的
不过,在Firebase Portal上也有同样的问题。Upload 1 missing dSYM required to process 4 crashes
个
我试了很多次,但还没有完成。
如果有人有想法,请帮助我解决这个问题。
谢谢,社区
7条答案
按热度按时间suzh9iv81#
让你的Xcode在你运行/构建应用时自动上传。
I.打开Xcode > Targets > MyProjectName > Build phages
添加两个脚本(使用+符号),每个脚本由以下内容组成
1.第一个月
"${PODS_ROOT}/FirebaseCrashlytics/upload-symbols" -gsp "${PROJECT_DIR}/MyProjectName/GoogleService-Info.plist" -p ios "${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}"
个重要提示:请确保将
MyProjectName
替换为您的项目名称,但保留其余部分。II.还请确保在目标> MyProjectName >构建设置中选中这些选项
将安装信息格式设置为DWARF with dSYM file
三.图像x1c 0d1xx 1c 1d 1xx 1c 2d 1xx 1c 3d 1x
ugmeyewa2#
当准备发布我的应用程序时,我采取以下步骤导出,上传和获取dSYM:
1.在终端我运行'Flutter建立ios --释放'
1.在xCode中打开iOS项目,并将设备切换到“Generic iOS Device”
1.从顶部菜单产品>存档
1.一旦完成,管理器窗口将显示您的存档构建。您也可以从窗口>管理器手动打开此窗口
1.选择您要上传到iTunes Connect的版本,然后点击分发应用程序并按照流程操作
1.上传完成后,右键单击组织器窗口中的构建,然后单击“在查找器中显示”
1.您应该在finder中看到一个存档文件,右键单击它并单击“显示包内容”。
1.里面应该有一个名为dSYM的文件夹,您可以压缩并发送到任何您需要的地方
xam8gpfp3#
你可以使用
Fastlane
来自动化这个作为发布过程的一部分.这里有一个例子可以进入你的Fastfile
字符串
然后你可以运行
fastlane ios toCrashlytics
来运行它。请参阅this link了解更多详细信息。
35g0bw714#
在构建Flutter应用的Archive(使用Xcode)之后,您可以从Flutter应用的
ios
目录(使用Firebase的上传工具)运行以下命令:字符串
更改上述命令行以指向正确的Firebase plist文件。
-p
标志指定平台(可以是ios
、mac
或tvos
)。上述命令还将查找应用程序的存档文件Runner.xcarchive
。qvtsj1bj5#
方案1
我使用这个运行脚本来自动化这个过程
字符串
方案2
然而,如果你像我一样,你有你的应用程序的构建方案(如Release-dev,Release-prod,Release-beta);然后这样做,
1.确保你已经正确地设置了你的构建方案,否则接下来的步骤可能对你不起作用。PS:我使用这个medium post。
1.确保您在单独的文件夹中为每个方案提供GoogleService-Info.plist;重要信息:您的文件夹结构应类似于以下内容:
型
1.确保您已在以下位置为发布版本启用了dSYM:目标->运行程序->构建设置->构建选项->版本信息格式。应设置为
DWARF with dSYM File
x1c 0d1x的数据
1.然后添加一个名为
[firebase_crashlytics] Upload dSYMs to Firebase Crashlytics
(或其他名称)的运行脚本。1.复制并粘贴下面的脚本部分:
型
${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}
$(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)
的
参见the Firebase docs for more info
就这样!
hjzp0vay6#
目前,推荐的方法是添加一个运行脚本阶段,在每次构建时将dSYM上传到Crashlytics。
1.在Xcode中,从项目导航中选择Runner。
1.选择Build Phases选项卡,然后单击+ > New Run Script Phase。
1.将以下内容添加到Shell属性下的“键入脚本.”文本框中:
字符串
从生成的DefaultFirebaseOptions文件(appId)或Firebase控制台->项目设置->您的应用程序中重新配置
<googleAppId>
。x1c 0d1x的数据
来源:here
ijnw1ujt7#
使用最新版本的flutter/crashlytics,
第一个月
成
Runner -> Build Phases -> [firebase_crashlytics] Crashlytics Upload Symbols
个是我唯一需要的东西
整条线看起来像这样:
字符串
Flutter 3.16.5
firebase_crashlytics:^3.4.9
电话:https://firebase.google.com/docs/crashlytics/get-deobfuscated-reports?platform=flutter