跳到主要内容

发布到 Apple App Store

发布过程与任何其他原生 iOS 应用相同,但需要考虑一些额外因素。

提示

如果您正在使用 Expo,请阅读 Expo 指南中的部署到应用商店部分,了解如何构建应用并将其提交到 Apple App Store。本指南适用于任何 React Native 应用,以自动化部署过程。

1. 配置发布方案

在 App Store 中分发应用需要使用 Xcode 中的 Release 方案。为 Release 构建的应用将自动禁用应用内开发者菜单,这可以防止您的用户在生产环境中意外访问该菜单。它还会将 JavaScript 本地打包,这样您就可以将应用部署到设备上并在未连接电脑的情况下进行测试。

要将您的应用配置为使用 Release 方案构建,请前往 ProductSchemeEdit Scheme。选择侧边栏中的 Run 标签页,然后将 Build Configuration 下拉菜单设置为 Release

专业技巧

随着您的应用包大小的增长,您可能会在启动屏幕和根应用视图显示之间看到一个空白屏幕闪现。如果出现这种情况,您可以将以下代码添加到 AppDelegate.m 中,以在过渡期间保持启动屏幕的显示。

objectivec
  // Place this code after "[self.window makeKeyAndVisible]" and before "return YES;"
UIStoryboard *sb = [UIStoryboard storyboardWithName:@"LaunchScreen" bundle:nil];
UIViewController *vc = [sb instantiateInitialViewController];
rootView.loadingView = vc.view;

每次将应用部署到物理设备时,即使是在调试模式下,也会生成静态包。如果您想节省时间,可以通过在 Xcode 构建阶段 Bundle React Native code and images 的 shell 脚本中添加以下内容,来关闭调试模式下的包生成。

shell
 if [ "${CONFIGURATION}" == "Debug" ]; then
export SKIP_BUNDLING=true
fi

2. 构建发布版应用

现在,您可以通过按下 Cmd ⌘ + B 或从菜单栏中选择 ProductBuild 来构建发布版应用。构建发布版后,您就可以将应用分发给 Beta 测试人员并将其提交到 App Store。

提示

您还可以使用 React Native CLI 通过 --mode 选项并将其值设置为 Release 来执行此操作(例如,在项目根目录中运行:npm run ios -- --mode="Release"yarn ios --mode Release)。

完成测试并准备发布到 App Store 后,请按照本指南继续操作。

  • 启动您的终端,导航到应用中的 iOS 文件夹并输入 open .
  • 双击 YOUR_APP_NAME.xcworkspace。它应该会启动 Xcode。
  • 点击 ProductArchive。确保将设备设置为“Any iOS Device (arm64)”。
注意

检查您的 Bundle Identifier,确保它与您在 Apple Developer Dashboard 的 Identifiers 中创建的完全相同。

  • 归档完成后,在归档窗口中,点击 Distribute App
  • 现在点击 App Store Connect(如果您想发布到 App Store)。
  • 点击 Upload → 确保所有复选框都被选中,然后点击 Next
  • 根据您的需要选择 Automatically manage signingManually manage signing
  • 点击 Upload
  • 现在您可以在 App Store Connect 的 TestFlight 下找到它。

现在填写必要的信息,然后在 Build Section 中选择应用的构建版本,点击 SaveSubmit For Review

4. 屏幕截图

Apple Store 要求您提供最新设备的屏幕截图。此类设备的参考信息可以在此处找到。请注意,如果已经提供了其他尺寸的屏幕截图,则某些显示尺寸的屏幕截图不是必需的。