在 TestFlight 上测试 React Native App

Posted

技术标签:

【中文标题】在 TestFlight 上测试 React Native App【英文标题】:Testing React Native App on TestFlight 【发布时间】:2015-10-29 18:48:19 【问题描述】:

我一直在尝试查找有关如何正确创建 React Native 构建的文档,该构建不需要在本地网络上并且可以使用运营商网络,然后可以部署到 TestFlight 上进行测试。

我已经能够在 TestFlight 上获得马厩,但不知道如何让应用程序在本地网络之外运行。

我试过这个没有运气:

在项目 AppDelegate.m 中,取消注释 OPTION 2 注释下方的行:

jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];

这会导致应用从磁盘上的预捆绑文件加载。接下来,在开发服务器运行(以 npm start 启动)的情况下,您可以卷曲评论中的 URL,添加一个额外的 dev 查询参数:

curl http://localhost:8081/index.ios.bundle\?dev\=0 -o main.jsbundle'

有什么想法吗?

【问题讨论】:

【参考方案1】:

由于v0.14 JS 和图像使用Bundle React Native code and images Xcode 构建阶段自动打包到iOS 应用程序中。

您所要做的就是从 XCode 运行应用程序,然后:

    打开ios/YourApp/AppDelegate.m 取消注释该行,jsCodeLocation = [[NSBundle mainBundle] ...

【讨论】:

【参考方案2】:

@rahul2001 我认为您正在寻找的答案就在这里... http://facebook.github.io/react-native/docs/running-on-device-ios.html#using-offline-bundle

我没有使用过 TestFlight,但我发现 Fabric.io(来自 twitter)非常好用。

希望对您有所帮助。

【讨论】:

谢谢,但这不起作用。我已经尝试过了,得到了这个: $ react-native bundle -bash: react-native: command not found【参考方案3】:

您的应用需要侦听外部可用 IP(如 AWS 上的某些东西)而不是本地网络特定 IP。

您将使用预捆绑的二进制文件,而不是从开发服务器加载应用程序。您自己的后端将使用上述 IP。

【讨论】:

以上是关于在 TestFlight 上测试 React Native App的主要内容,如果未能解决你的问题,请参考以下文章

Expo react-native:.png 图像未显示在 testflight 应用程序上(在开发中工作正常)

如何使用TestFlight进行App构建版本测试

Testflight,通用应用程序无法安装在 iPad 上

在 TestFlight 上上传开发阶段应用程序进行测试会收到来自 Apple 的警报电子邮件

TestFlight 已过期

Testflight 假 iOS 版本检测