文档

支持

Multiplay Hosting

Multiplay Hosting

版本上传工作流程

Follow this workflow to upload and manage builds using the API.
阅读时间4 分钟最后更新于 15 天前

版本工作流程包括构建二进制文件获取(或创建)版本创建版本文件列表上传版本文件创建版本的发布版本等待版本进行同步 在使用版本工作流程之前,必须具备 CCD API 密钥和具有以下角色的 UGS 服务帐户:
  • Multiplay API 查看者
  • Multiplay API 编辑者
请参阅项目角色服务帐户身份验证 下图显示了该工作流程的简化版本:
版本工作流程图

版本工作流程图

构建二进制文件

如果计划创建版本,则必须先构建游戏二进制文件,才能继续版本工作流程的其余部分。如果您已经有要使用的版本,则可跳过该步骤并继续获取现有版本 构建游戏二进制文件的过程取决于游戏所使用的游戏引擎和技术堆栈。如果您使用的是 Unity 引擎,请参阅编译发布创建版本

获取版本

获取版本的过程取决于您要使用现有版本还是创建新版本

按名称获取现有版本

您可以使用列出版本 API 按名称获取现有版本 ID。如果您已知道版本 ID,请继续创建版本文件列表 在版本列表 API 响应体中,每个版本的
ccd.bucketID
字段提供相应版本的 CCD 存储桶 ID。请记录您要使用的版本的
buildID 
ccd.bucketID
字段值。
以下代码示例展示了如何使用 curl 按名称获取现有版本
curl -X GET -H "Authorization: Basic <SERVICE_ACCOUNT_CREDENTIALS>" https://services.api.unity.com/multiplay/builds/v1/projects/{projectId}/environments/{environmentId}/builds
请参阅 API 文档(了解示例响应体)和参数文档。

创建新版本

可以使用创建版本 API 来创建新版本。 创建版本 API 响应体中的
ccd.bucketID
字段提供所创建版本的 CCD 存储桶 ID。请记录
buildID 
ccd.bucketID
字段的值。
以下代码示例展示了如何使用 curl 创建新版本
curl -X POST -H "Authorization: Basic <SERVICE_ACCOUNT_CREDENTIALS>" -H "Content-Type: application/json" \-d '{"buildName":"Dev Build A", "ccd": {}, "osFamily": "LINUX"}' \https://services.api.unity.com/multiplay/builds/v1/projects/{projectId}/environments/{environmentId}/builds
请参阅创建版本 API 文档(了解示例响应体)和参数文档。

创建版本文件列表

上传版本文件

可以使用 CCD 按路径创建或更新条目 API 上传版本文件列表中每个文件。
  1. 创建条目。以下代码示例展示了如何使用 curl 创建条目
curl -X POST -H "Authorization: Basic <SERVICE_ACCOUNT_CREDENTIALS>" -H "Content-Type: application/json" \-d '{"content_type": "<FILE_CONTENT_TYPE>", "signed_url": true}' \https://content-api.cloud.unity.com/api/v1/environments/{environmentid}/buckets/{bucketid}/entry_by_path/?path=path/to/file
  1. 从响应中获取
    signed_url
    。然后可以将文件内容上传到此 URL。以下代码示例展示了如何使用 curl 上传文件:
curl -X PUT -H "Content-Type: <FILE_CONTENT_TYPE>" --upload-file path/to/file \<signed_url>
请参阅 CCD 按路径创建或更新条目 API 文档(了解示例响应体)和参数文档。

创建版本的发布版本

可以使用创建新的发布版本 API 来创建版本的发布版本。请确保将
ccd.bucketID
字段设置为您之前记录的 CCD 存储桶 ID。
以下代码示例展示了如何使用 curl 创建版本的发布版本
curl -X POST -H "Authorization: Basic <SERVICE_ACCOUNT_CREDENTIALS>" -H "Content-Type: application/json" \-d '{"ccd": { "bucketID": "<CCD_BUCKET_ID>" }, "forceRollout": false}' \https://services.api.unity.com/multiplay/builds/v1/projects/{projectId}/environments/{environmentId}/builds/{buildId}/versions
请参阅创建版本的发布版本 API 文档(了解示例响应体)和参数文档。

等待版本进行同步

通过重试获取单个版本 API 直到
syncStatus
字段变为
SYNCED
,可确定版本何时完成同步。
以下代码示例展示了如何使用 curl 了解版本何时完成同步
curl -X GET -H "Authorization: Basic <SERVICE_ACCOUNT_CREDENTIALS>" https://services.api.unity.com/multiplay/builds/v1/projects/{projectId}/environments/{environmentId}/builds/{buildId}
请参阅获取单个版本 API 文档(了解示例响应体)和参数文档。