Xcode 在我添加Sentry以响应本机项目后,部署到itunes商店的应用程序崩溃(在Android或ios模拟器上运行正常)

Xcode 在我添加Sentry以响应本机项目后,部署到itunes商店的应用程序崩溃(在Android或ios模拟器上运行正常),xcode,react-native,sentry,Xcode,React Native,Sentry,我将react native sentry添加到react native项目中。我遵循了这本手册: 在Android和ios emulator上一切正常。但当我试图在xcode中归档一个应用程序时,我遇到了这个错误 反应本机符号处理失败 哨兵生成步骤在后台运行时失败。您可以忽略此错误或查看详细信息以尝试解决它。忽略它可能会导致崩溃得不到正确处理 如果我单击“显示详细信息”;我明白了 错误:分析第1行第0列的值时出现EOF 我按照这里的建议编辑了buildphases>Upload Debug

我将react native sentry添加到react native项目中。我遵循了这本手册:

在Android和ios emulator上一切正常。但当我试图在xcode中归档一个应用程序时,我遇到了这个错误

反应本机符号处理失败

哨兵生成步骤在后台运行时失败。您可以忽略此错误或查看详细信息以尝试解决它。忽略它可能会导致崩溃得不到正确处理

如果我单击“显示详细信息”;我明白了

错误:分析第1行第0列的值时出现EOF

我按照这里的建议编辑了buildphases>Upload Debug Symbols,所以现在这里只有这一行

export SENTRY\u PROPERTIES=SENTRY.PROPERTIES

错误仍然存在。所以我决定忽略它。在这种情况下,在我将该版本上传到Itunesconnect并使用TestFlight安装后,它会在启动时立即崩溃

如果我在模拟器上运行它,或者直接在iphone上安装它,效果会很好

它在Android上也可以正常工作


你能给我一些建议吗?怎样才能使它在苹果商店也能正常工作

对于我来说,这个错误是由Xcode发出的,因为运行构建脚本时出现了一些问题

使用:
@sentry/react native:“^1.0.9

我修复了将
index.ios.js
始终保存在根文件夹中的问题(在此之前,我将其保存在
src
文件夹中,并尝试使用自定义构建脚本从
src
获取它)

我将Xcode中的构建脚本设置为与sentry文档中的脚本类似:

构建RN代码和图像脚本:

// sentry properties file located in `ios` folder
export NODE_BINARY=node
export SENTRY_PROPERTIES=sentry.properties

../node_modules/@sentry/cli/bin/sentry-cli react-native xcode \
../node_modules/react-native/scripts/react-native-xcode.sh
上传调试符号脚本:

// sentry properties file located in `ios` folder
export NODE_BINARY=node
export SENTRY_PROPERTIES=sentry.properties

../node_modules/@sentry/cli/bin/sentry-cli react-native xcode \
../node_modules/react-native/scripts/react-native-xcode.sh
我把这个脚本作为构建阶段的最后一个脚本

 export SENTRY_PROPERTIES=sentry.properties

 ../node_modules/@sentry/cli/bin/sentry-cli upload-dif 
 "$DWARF_DSYM_FOLDER_PATH"
注意:

// sentry properties file located in `ios` folder
export NODE_BINARY=node
export SENTRY_PROPERTIES=sentry.properties

../node_modules/@sentry/cli/bin/sentry-cli react-native xcode \
../node_modules/react-native/scripts/react-native-xcode.sh
1)我还没有尝试将sentry.properties文件作为android和iOS的通用文件移动到根文件夹中(脚本中包含import../sentry.properties),但我认为这也应该可以

2)我使用终端直接测试发布版本:

react本机运行ios——配置发布——模拟器“iPhone 8”


react native run ios--configuration Release--device“Your device Name”

在我的例子中,原因是我用来保存项目、派生数据和存档的硬盘名称中包含了一个空格。看起来Sentry CLI脚本不喜欢项目路径中的空格,它在那里崩溃。
重命名磁盘和更新派生数据和归档文件的路径就足够了,现在一切都好了。

您找到解决方案了吗?没有。我换了工作。