使用持续交付服务自动部署和发布移动应用程序

作为开发人员,你编写代码并将其检查到代码存储库中,但签入存储库的提交可能并不总是一致的。 当多个开发人员处理同一个项目时,集成可能会出现问题。 团队可能会遇到以下情况:事情不起作用、bug 堆积、项目开发延迟。 开发人员必须等到生成并测试整个软件代码,以检查错误,这会使过程缓慢且迭代更少。

通过持续交付,可以自动部署和发布移动应用程序。 无论你是将应用程序分发给一组测试人员还是公司员工, (进行 beta 测试) ,还是分发到用于生产) 的应用商店 (,都无关紧要。 持续交付可降低部署风险,并鼓励快速迭代。 还可以以持续的方式向客户发布新的更改。

将应用程序二进制文件分发给 beta 测试人员

Beta 测试移动应用程序是应用程序开发过程中的关键步骤之一。 这有助于尽早发现应用程序中的 bug 和问题。 当应用程序可供生产使用时,反馈可提高应用程序质量。

使用以下服务在移动应用中启用持续交付管道。

Visual Studio App Center 分发

App Center 分发 是一种工具,可供开发人员快速将内部版本发布到设备。 App Center Distribution 具有完整的安装门户体验,是一个功能强大的 Beta 应用测试人员分发解决方案。 它也是通过公共应用商店分发的便捷替代方法。 开发人员可以使用 App Center Build 和公共应用商店集成进一步自动化其分发工作流。

Visual Studio App Center 分发功能

  • 将应用分发给 beta 测试人员和用户,并确保所有测试人员都使用最新版本的应用程序。
  • 通知测试人员新版本,而无需测试人员再次完成下载流。
  • 管理不同版本的应用程序的通讯组。
  • 分发到存储:
  • 获取对 iOS、Android、macOS、tvOS、Xamarin、React Native、Unity 和 Cordova 的平台支持。
  • 自动将 iOS 设备注册到预配配置文件。

Visual Studio App Center 分发引用

Azure Pipelines

Azure Pipelines 是一种功能齐全的持续集成, (CI) 和持续交付 (CD) 服务,可与首选 Git 提供商配合使用。 Azure Pipelines 可以部署到大多数主要云服务,例如 Azure 服务。 可以从 GitHub、GitHub Enterprise Server、GitLab、Bitbucket Cloud 或 Azure Repos 上的代码开始。 然后,可以将代码生成、测试和部署到 Microsoft Azure、Google Cloud Platform 或 Amazon Web Services (AWS) 。

Azure Pipelines 功能

  • 简化的基于任务的体验,用于设置 CI 服务器:为本机 (Android、iOS 和 Windows) 以及跨平台 (Xamarin、Cordova 和 React Native) 移动应用程序设置 CI 服务器。
  • 任何语言、平台和云: 生成、测试和部署 Node.js、Python、Java、PHP、Ruby、Go、C/C++、C#、Android 和 iOS 应用。 在 Linux、macOS 和 Windows 上并行运行。 部署到 Azure、AWS 和 Google Cloud Platform 等云提供商。 通过 beta 渠道和应用商店分发移动应用程序。
  • 本机容器支持: 轻松创建新容器,并将其推送到任何注册表。 将容器部署到独立主机或 Kubernetes。
  • 高级工作流和功能: 轻松创建生成链和多阶段生成。 获取对 YAML、测试集成、发布入口、报告等的支持。
  • 扩展: 使用社区构建的一系列生成、测试和部署任务,其中包括从 Slack 到 SonarCloud 的数百个扩展。 甚至可以从其他 CI 系统(如 Jenkins)进行部署。 Web 挂钩和 REST API 可以帮助你集成。
  • 免费的云托管版本: 这些版本可用于公共和专用存储库。
  • 支持部署到其他云供应商: 供应商包括 AWS 和 Google Cloud Platform。

Azure Pipelines 参考

将应用程序直接分发到 App Store

应用程序可供生产使用并想要公开使用后,需要将其提交到可供客户下载的应用商店。 可通过多种方式将应用程序直接分发到应用商店。

Visual Studio App Center 分发应用商店

通过 App Center 分发,可以将移动应用程序直接发布到应用商店。 应用程序可供用户下载后,可以直接从 Visual Studio App Center 门户发布应用程序二进制文件。

可以直接分发到:

Apple App Store

在 Apple 开发和维护的应用商店中,用户可以浏览和下载为 iOS、MacOS、WatchOS 和 tvOS 设备开发的应用程序。 开发人员需要将其 iOS 应用提交到 Apple App Store以供公众使用。

Google Play

Google Play 是 Android OS 的官方应用商店,用户可以在其中浏览和下载为通过 Google 发布的 Android 设备开发的应用程序。

Intune

Microsoft Intune是企业移动管理空间中的基于云的服务,可帮助员工提高工作效率,同时保护公司数据。 使用 Intune,可以:

  • 管理员工用于访问公司数据的移动设备和电脑。
  • 管理员工使用的移动应用程序。
  • 通过控制员工访问和共享公司信息的方式来保护公司信息。
  • 确保设备和应用程序符合公司安全要求。

将更新直接部署到用户的设备

CodePush

借助 App Center 中的 CodePush,Apache Cordova 和 React Native 开发人员可以直接将移动应用程序更新部署到用户的设备。 它充当开发人员可以发布某些更新(例如 JavaScript、HTML、CSS 和图像更改)的中心存储库。 然后,应用程序可以使用提供的客户端 SDK 从存储库中查询更新。 这样,就可以在解决 bug 或添加小功能时,与用户建立更确定性、更直接的参与模型。 无需重新生成二进制文件或通过任何公共应用商店重新分发它。

CodePush 主要功能

  • Cordova 和 React Native 开发人员可以直接将移动应用程序更新部署到用户的设备上,而无需在应用商店中发布。
  • 可用于修复 bug 或添加和删除不需要重新生成二进制文件并通过相应的存储重新分发的小型功能。

CodePush 引用