Xcode 在我添加Sentry以响应本机项目后,部署到itunes商店的应用程序崩溃(在Android或ios模拟器上运行正常)
我将react native sentry添加到react native项目中。我遵循了这本手册: 在Android和ios emulator上一切正常。但当我试图在xcode中归档一个应用程序时,我遇到了这个错误 反应本机符号处理失败 哨兵生成步骤在后台运行时失败。您可以忽略此错误或查看详细信息以尝试解决它。忽略它可能会导致崩溃得不到正确处理 如果我单击“显示详细信息”;我明白了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
错误:分析第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脚本不喜欢项目路径中的空格,它在那里崩溃。
重命名磁盘和更新派生数据和归档文件的路径就足够了,现在一切都好了。您找到解决方案了吗?没有。我换了工作。