大多数浏览器和
Developer App 均支持流媒体播放。
-
Xcode 和 Xcode Cloud 中的简化分发
了解如何使用 Xcode 的简化分发共享 App,一键将 App 提交到 TestFlight 或 App Store。我们还将向你展示如何使用 Xcode Cloud 通过 TestFlight 中自动包含测试人员的注释来简化分发过程,并使用发送操作自动公证你的 Mac App。
章节
- 1:44 - Archiving for the simulator
- 2:33 - Distribute your app with new streamlined methods
- 3:06 - TestFlight internal only streamlined option
- 4:24 - Upload to App Store Connect demo
- 4:58 - TestFlight Ready to Test push notification
- 6:05 - Automation with Xcode Cloud
- 7:01 - Configuring TestFlight support in Xcode Cloud Demo
- 9:02 - Automate TestFlight What to Test with Xcode Cloud
- 11:08 - What is Notarization?
- 12:12 - Notarization with Xcode
- 12:33 - Automate Notarization with Xcode Cloud
- 13:27 - Automate Notarization with Xcode Cloud Demo
- 15:07 - Download the Notarized app from Xcode Cloud
- 15:35 - Wrap-up
资源
- Distributing your app for beta testing and releases
- Including notes for testers with a beta release of your app
相关视频
WWDC23
WWDC22
WWDC19
-
下载
♪ ♪
Chris:大家好 我是 Chris 本节将由 Jason 和我共同完成 欢迎观看“Xcode 和 Xcode Cloud 中的简化分发” 作为开发者 为了分享完美作品 我们会不断进行产品迭代 要制作一款真正优秀的 App 你需要能够快速轻松地 构建、测试、分发、收集 并集成反馈 幸运的是 我们有适合这项工作的工具 你可以通过 TestFlight 将 App 展示给 团队、朋友和家人 当你觉得准备就绪时 可以将你的 App 提交到 App Store 也可以让你的 App 经过 Apple 公证 并直接与客户共享 当然 我们有很好的工具 可以分发到这些渠道 你可以使用 Xcode 现在 Xcode Organizer 窗口使用新的简化选项 只需点击一下即可轻松分发 使用 Xcode Cloud 让你的努力如虎添翼 使用 Xcode Cloud 无论何时推送代码变更 你都可以创建一个工作流 自动构建和共享 App 今天我将向你展示如何使用 TestFlight 给测试者发送 App 然后 Jason 将 向你展示如何在 Mac 上 为你的客户使用公证 我们开始吧
打开我的 “Backyard Birds”项目 我正在一个 git 分支上工作 尝试不同的强调色 我想在 TestFlight 上 与我的团队分享这些新的红色 要做到这一点 第一步是创建一个“归档” 什么是归档? 归档就是 App 的记录 它是 App 优化 发布构建版本的包装器 它包括可用于本地符号的 调试符号 或称做“dSYM” 归档的内容最终会根据 你选择的目标位置重新打包 如何归档? 非常简单 你可以使用 “产品”菜单“归档” 大家请注意 我已经选择了 iPhone 模拟器 Xcode 非常智能 它会用所有 iOS 设备上 运行需要的全部 CPU 架构 构建我的归档
Xcode 生成归档后 接下来点击“分发 App”按钮 Xcode 15 新增功能 你能从几个简化的选项中进行选择 选择其中一个选项 你只需点击一下 即可轻松上传或导出 App 现在让我们花点时间 来探索这些简化选项 你可以选择 “TestFlight & App Store”选项 使用 TestFlight 的全部功能 并提交到 App Store 或者 你可以使用新的 “仅 TestFlight 内部测试”选项 你可以与团队共享此构建 不提交到 App Store 这非常适合 在迭代开发分支时用来获得反馈
如果要导出 App 的优化版本 你可以使用调试选项 此构建可以安装在 团队的已注册设备上 或者你可以使用发布测试选项 此选项将为你的 App 签名 类似于在 App Store 上签名 此构建版本能安装在 团队的注册设备上 这些简化的选项都使用推荐设置 建议的设置包括 使用自动签名对 App 重新签名 无需进行任何配置 嵌入用于服务器端 崩溃日志符号化 App 符号 自动递增 App 内部构建版本号 为 App Store 做好准备 从 Swift 嵌入式 dylib 中剥离符号信息 使 App 变得更小
如果你需要一些 无法作为简化选项的内容 也可以选择“自定义” 这样你可以从更多 推荐的设置中进行选择 我准备将此构建 发送给我的团队中的一些成员 因为我只是快速尝试一些变更 并且希望这个构建版本 进入 App Store 所以我将选择 “仅 TestFlight 内部”选项 并点击分发
就这样 无需任何多余的说明 Xcode 知道如何处理
Xcode 正在 重新打包 App 重新签名 其中包括符号 并上传到 TestFlight 就这样 App 上传成功 稍后 App 上传并处理后 我就会收到一个新的通知 告知 App 已经准备好测试了 在我的构建版本完成处理之后 我可以在 Safari 浏览器中 进入 App Store Connect 从那里我可以 在 TestFlight 中访问我的 App “Backyard Birds” 编辑测试详细信息 当我的团队在他们的设备上 使用 TestFlight 时 他们可以阅读有关此 新构建版本测试的内容的所有信息 他们可以使用 TestFlight 向我发送带有文本反馈的截屏 稍后我可以在 Xcode Organizer 窗口中查看反馈 在 Xcode Organizer 的 反馈选项卡中 Jason 给我发了 一张截屏和一条消息 他好像不太喜欢那些红色的按钮 那可不行 我想我们还有很多工作要做
我们已经取得了很多成果 我们只需使用 Xcode 归档 App 的构建版本 并将其一键 上传到 TestFlight 我们向团队提供了 一些关于待测试内容的说明 并收到了一些反馈 我们正在构建并完善 一款出色的 App 构建和分发 App 需要处理很多问题 Xcode Cloud 自动执行分发任务 让你专注于开发 Xcode Cloud 是 Apple 公司 开发的持续集成和交付服务 它是专门为 Apple 开发者设计的 我想将 Xcode Cloud 设置为在向功能分支 提交变更时 自动创建构建版本 将该构建发送到 TestFlight 并包含有关要测试的内容的说明 实现这一点 我可以使用 Xcode Cloud Workflow 我已经为 App 添加了工作流 接下来对其进行编辑 添加对 TestFlight 的支持 我们将首先使用集成菜单 来管理工作流 我们将为 TestFlight 编辑归档操作 我们将在工作流中 添加一个发送操作 将构建发送给一组内部测试人员 让我们详细了解一下 首先点击新的 集成菜单和管理工作流
我将选择我之前一直 在处理的“内部反馈”工作流 并使用齿轮按钮编辑工作流
我以前配置过 只要分支以字符串 “features/”开头发生变更 就会启动此工作流 这包括我正在处理的 accent_color 功能分支 如果要部署到 TestFlight 需要编辑归档操作 现在 我已经为正在 原型设计的功能指定了此工作流 我不希望构建传到 App Store 所以我会选择 “TestFlight (仅内部测试)”
我只想与团队中的 选定成员共享这些构建版本 为此 我将添加一个 TestFlight 内部发送操作 我会把相关人员 添加到 TestFlight 组 我将它命名为“同道中人” 接下来“添加” “保存”
“完成” 现在万事俱备 可以开始了 每当我对这个 accent_color 分支进行变更时 就会向“同道中人”组 发送一个新的构建版本 我们尝试调整主题色并推送变更 我会把重点颜色从红色改为紫色 然后构建并运行 在模拟器中查看
我觉得紫色的按钮更好看 希望 Jason 赞同 要推送这些变更 我将使用 集成菜单并点击提交
我现在可以查看变更的文件 在第一个文件 “Contents.json”中 我将重点颜色从红色改到紫色 变更成功了 我还编写了一个自定义的构建脚本 Xcode Cloud 使用 此脚本来收集 git 提交消息 用来作为我在 TestFlight 上 构建的测试详细信息 这样特别好 Xcode Cloud 现在可以 自动更新要测试的内容的记录 要进一步了解关于如何设置的信息 请查看开发人员文档中的 “包括 App 测试版 测试人员的注意事项” 本文档介绍了我正在用的构建脚本 我会添加一条提交消息 “按钮现在是紫色的” 这会让团队 清楚地知道我做了哪些变更 我会通过点击“全部暂存” 按钮来暂存所有这些变更 使用“提交”下拉按钮 进行提交和推送 然后点击推送上传到远程存储库 就这样 通过推送功能 Xcode Cloud 正在归档并部署到 TestFlight
稍后 我可以 在报告导航器中查看构建版本 然后在“内部反馈” 工作流下选择最新的构建版本 一切顺利 归档操作和 TestFlight 内部测试 推送操作成功了 如果我在我的设备上查看 TestFlight 中的构建版本 它包括有用的测试说明 “按钮现在是紫色的” 我们来看一下这是什么 Jason 已向 管理器窗口发送了反馈 看来他喜欢新的紫色按钮 好了 我想可以保存这个修改了 真是太棒了 现在我们有了一个完美的设置 在 Xcode Cloud 的帮助下 每当我对这个功能分支 进行变更时 团队都会收到 App 新的构建版本 其中包含测试内容的有用信息 我现在可以持续 集成反馈并部署改进 现在 我可以腾出时间 专注于开发并交付最佳结果 我们已经学到了很多关于使用 Xcode 和 Xcode Cloud 通过 TestFlight 分发 App 的知识 接下来 Jason 将 向我们展示如何使用公证 Jason:谢谢 Chris App Store 是接触 Apple 客户的绝佳途径 但如果你想直接 托管并销售你的 Mac App 你可以对 App 进行公证 公证后的 App 会让用户相信 软件的安全性 已经通过 Apple 的验证 那么如何进行公证? 你需要首先生成 App 的归档 并将其上传到 Apple 的公证服务 在那里对其进行恶意内容扫描 该过程完成后 公证服务会生成一张票证 该票证可收入到你的 App 中 现在 经过公证的 App 已准备好分发给客户
当你的 App 首次启动时 macOS 将验证该 App 是否已被 Apple 公司检查 这是通过检查另装订的票证以及 通过联系公证服务 提供的票证来完成的 要进一步了解有关公证的更多信息 请查看往年 WWDC 会议 “关于公证的介绍”和 “Mac App 公证的新内容” 为了从 Xcode 公证你的 App 首先要生成一个归档 正如 Chris 之前向我们展示的 我们可以通过打开 窗口管理器中的 管理器窗口 选择我们的 App 归档 然后点击分发 App 来访问新的简化分发选项 直接分发选项 将对你的 App 进行公证 到目前为止 我一直在使用 Xcode 进行公证 今年为了帮助实现此过程的自动化 Xcode Cloud 开始支持公证 设置好公证工作流后 Xcode Cloud 会根据 配置的启动条件自动启动构建 经过公证的 App 准备就绪后 你可直接从 Xcode Cloud 下载 我已经为我们的 Mac App 配置了发布工作流 每当推送一个变更 到我们的发布分支时 系统会运行自动测试并生成归档 对 App 公证前 我会更新工作流
工作流中只有管理员和 App 管理员才能设置公证 因此请确保你拥有合适的权限
由于我会使用 Xcode Cloud 进行公证 我将点击取消并关闭管理器窗口
首先 转到侧边栏中 报告导航器的 Cloud 选项卡
要编辑 macOS 发布工作流 我将再次点击并选择编辑工作流
你可以看到归档操作已配置 让我们通过点击加号和公证 来添加新的公证发送操作
将此附加步骤更新到 工作流描述文件
就是这样 点击保存并将此变更保存到工作流
我认为我们的 Mac App 很好 尤其是有了新的紫色按钮 所以我准备使用 更新的工作流开始公证流程 我可以通过二次点击工作流并 选择开始构建来完成此操作
我将选择发布分支 然后点击开始构建以排队构建
你会注意到测试和归档操作已排队 一旦完成以后 新添加的公证发送操作就会运行
当 Xcode Cloud 处理我们的构建时 让我们仔细看看构建报告
当运行 Xcode Cloud 构建时 构建概述将显示此构建版本中 发生的所有事情的摘要 如果你想同时处理其他事情 报告导航器的云选项卡 会在你的所有构建运行时 显示它们的状态 并支持你导航到详细结果
让我们检查一下构建版本的状态
非常好! 新的公证发送操作已成功完成 我将点击“下载公证 App” 开始下载
下载完成后 点击查看公证 App 将显示下载的档案 我们可以解压档案 以查看公证 App 现在我准备向用户分享 App
今天我们演示了如何使用不同的工具 实现交付最佳版本的 App Xcode 新的简化分发选项 支持你快速上传 App
TestFlight 内部分发 是一种迭代变更的好方法 支持指定的受众试用 App 并提供有价值的反馈 Xcode Cloud 工作流 有助于自动执行分发流程 并支持对 Mac App 进行公证 从而更轻松地在 App Store 之外进行分发
我们认为这些 对 App 分发的改进 可以节省你宝贵的时间 使你专注于最擅长的事情 构建出色的 App 感谢观看 ♪ ♪
-
-
8:50 - Use Xcode Cloud to add a Git commit message to TestFlight What to Test
#!/bin/zsh # ci_post_xcodebuild.sh if [[ -d "$CI_APP_STORE_SIGNED_APP_PATH" ]]; then TESTFLIGHT_DIR_PATH=../TestFlight mkdir $TESTFLIGHT_DIR_PATH git log -1 --pretty=format:"%s" >! $TESTFLIGHT_DIR_PATH/WhatToTest.en-US.txt fi
-
-
正在查找特定内容?在上方输入一个主题,就能直接跳转到相应的精彩内容。
提交你查询的内容时出现错误。请检查互联网连接,然后再试一次。