我可以强制 Crashlytics 在当前线程中调用脚本 "run" 吗?

Can I force Crashlytics to call a script "run" in the current thread?

我有自己的脚本,可以通过它为 derivedDataPath 创建一个临时文件夹。脚本运行并创建 IPA 文件后,derivedDataPath 文件夹将被删除。但是在构建的最后阶段,我添加了一个调用:

Script:
${BUILD_DIR%Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run
Input Files:
${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}
${SRCROOT}/${BUILT_PRODUCTS_DIR}/${INFOPLIST_PATH}

他告诉我一切正常,上传将在后台完成:

Running upload-symbols in Build Phase mode
Validating build environment for Crashlytics...
Validation succeeded. Symbol uploading will proceed in the background.

但在我的 IPA 文件创建脚本中,derivedDataPath 文件夹将被删除。也许由于这个原因,数据没有被上传。如何查看上传是否完成?

现在我有一个控制台挂在 Firebase 中,没有所需版本的 dSYM 文件而且我不明白更新有什么问题,不是通过 Appstore,而是通过空气。

不使用“运行”脚本,您可以调用“upload-symbols”脚本并添加 --build-phase 标志:

${BUILD_DIR%Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/upload-symbols --build-phase

这将使脚本上传 dSYM 作为构建过程的一部分,而不是在后台执行。