我正在尝试关注this帖子,为我的本机应用设置暂存环境。该帖子要求向Xcode项目添加一个调用Staging
的新配置,并使用它来构建项目。我添加了Staging
配置,它是Release
配置的副本,但我无法使用该配置构建应用。我收到以下错误:
React/RCTBridgeModule.h file not found
我在Debug
和Release
配置中没有收到此错误。我读到react-native为配置名称Debug
和Release
分配了特殊含义,但我不确定如何解决这个问题。我还查看了react-native-config来设置暂存环境,但初始设置对我来说有点复杂,而且我不能马上理解。虽然其他帖子中列出的步骤非常简单易懂,但基本上是创建一个单独的配置并使用用于运行应用程序的配置来确定应用程序运行的环境。
如果您能够使用此方法或其他方法为您的react-native应用创建暂存环境,请分享。
谢谢!
答案 0 :(得分:2)
我认为你应该看一下这篇文章https://github.com/Microsoft/react-native-code-push#ios
我的方式:
首先,安装CodePush CLI:
npm install -g code-push-cli
然后转到React Native项目的root并使用命令行:
npm install --save react-native-code-push
然后链接库:
react-native link react-native-code-push
之后,我们需要使用我们的帐户登录代码(您可以在此处找到移动中心帐户):
code-push login
您还可以使用命令检查您是否已登录:
code-push whoami
在部署任何更新之前,我们需要使用以下命令在CodePush服务中注册应用程序:
code-push app add <appName> <os> <platform>
例如:
code-push app add myapp-ios ios react-native
code-push app add my-android android react-native
之后您应该会看到刚刚在移动中心https://mobile.azure.com/apps中添加的内容 下一步是通过键入命令行来检查部署密钥:
code-push deployment ls <appName> -k
例如:
code-push deployment ls myapp-ios -k
code-push deployment ls myapp-android -k
要发布更新,我们需要将Deployment Key链接到React Native项目。 https://github.com/Microsoft/react-native-code-push#ios
在最终设置部署密钥后,最后一步是上传第一个更新。 将 index.ios.js 和 index.android.js 文件更改为:
import codePush from "react-native-code-push";
let codePushOptions = {
checkFrequency: codePush.CheckFrequency.ON_APP_RESUME,
installMode: codePush.InstallMode.ON_NEXT_RESUME,
};
class MyApp extends Component {
...
}
export default MyApp = codePush(codePushOptions)(MyApp);
现在输入命令行:
code-push release-react <appName> <platform>
e.g。
code-push release-react myapp-ios ios
code-push release-react myapp-android android
完成此步骤后,您会看到第一个版本正在上传到移动中心
其余的现在变得非常容易。无论何时我们想要进行更新,我们只需要输入code-push release-react命令行,代码推送就会进行静默更新。
将分段推送到Production也只需要一个命令作业:
code-push promote <APP_NAME> Staging Production -r 100%