自定义生成依赖项处理

备注

自定义依赖项处理所发现的问题通常超出了 App Center 支持范围,因为 QA 高度自定义功能是不可行的。

App Center 生成服务会自动还原生成所需的应用程序依赖项。

但是,在某些情况下,可能需要对这些依赖项进行自定义处理才能正确地处理这些任务。 例如:

  • 需要额外时间超出 App Center 中使用的默认值的依赖项。
  • 托管在非公共资源中的依赖项。

依赖关系处理选项

有几个选项可用于还原依赖项:

  • 默认自动还原-NuGet 包和类似工作流的典型设置。
  • 自定义自动还原-包括项目中 NuGet.Config 的文件,用于修改正常的自动过程。
  • 克隆后脚本中的还原-允许对还原过程进行完全控制。
  • 在存储库本身中包含包-保证包可用,但会大幅增加存储库的大小。

常见示例

这些示例不是每种可能的方案,而是显示用于以自定义方式处理还原依赖项的选项。

将 CocoaPods 与部分(而非全部)盒一起使用,并签入到存储库

通常,如果项目使用 CocoaPods,则主 App Center 生成任务将使用自动还原它们 pod install 。 但是,如果你已在你的存储库中签入了一个 /pods 文件夹,系统将假定已签入盒,并跳过此步骤。

可能的解决方法包括:

  • 包括所有 CocoaPods。
  • 删除该 /pods 文件夹。
  • 添加 pod install 到克隆后的生成脚本以添加缺失的 pod。

需要额外的时间可靠还原的 Yarn 包

提示

最初,生成服务使用默认的30秒超时来还原 Yarn 包。 但在2020年10月19日,这已更新为10分钟。 可以通过 Save Save & Build 在分支配置中选择或来应用更新。

当 Yarn 还原包时,它可能会引发以下错误消息:

错误: " https://registry.yarnpkg.com/ [.pkg]/-/[.pkg]-[VERSION]. tgz: ESOCKETTIMEDOUT

可能的解决方法包括: