react-native - 为什么 TestFlight 应用与本地开发不同?

我有一个带有自定义本机插件的 React Native 应用程序。

当我在我的设备上使用 Xcode 测试该应用程序时,它运行良好。

我将完全相同的应用程序上传到应用程序 Store 并且它被破坏了。

在我的 iPhone 上它实际上并没有启动,而在我的 iPad 上它是错误的:

  • 我必须按两次按钮
  • 代码顺序错误(可能线程/渲染)
  • 插件中的事件有时会被触发,有时不会。完全随机。 (也可能是渲染问题)

不幸的是,我无法调试 TestFlight 应用程序。

有人知道为什么会发生这种情况吗?

回答1

我发现了问题。它在我的插件中以及我如何公开它。我的 index.ts 文件如下所示:

import { NativeModules } from 'react-native';
const { MyPlugin } = NativeModules;
export default MyPlugin;

没有默认导出更好:

import { NativeModules } from 'react-native';
export const { MyPlugin } = NativeModules;

我不知道为什么默认导出在发布模式下不起作用。我尝试将所有发布标志都与默认值相同,但结果相同。所以,只是改变出口方式就是解决它。

相似文章