本文介绍了热修复管理相关的 OpenAPI。
Maven 依赖
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>mpaas20201028</artifactId>
<version>5.1.0</version>
</dependency>接口说明
前置条件
在使用 OpenAPI 前,您需要先获取 AccessKey、App ID、Workspace ID 与 Tenant ID,并配置 Maven 依赖及配置文件上传。详情请参考 准备工作。
通用参数说明
所有接口中都会存在 appId、workspaceId 和 tenantId 三个参数,说明如下。
在之后的接口说明中会省略对这三个参数的说明。
参数名称 | 类型 | 说明 |
appId | String | 所属的 App |
workspaceId | String | 所属的 Workspace |
tenantId | String | 所属的租户 |
通用返回值说明
参数名称 | 类型 | 说明 |
resultCode | String | 请求正常时,返回的 Code 为 OK;其他情况,表明 API 请求异常。 |
requestId | String | 标识请求的 ID。 |
resultMessage | String | 请求异常时的描述。 |
***Result | Object | 返回的具体对象,具体含义请参见具体返回值。 |
在返回的具体对象中,都会包含 success 和 resultMsg 两个字段,这两个字段的含义如下:
名称 | 类型 | 说明 |
success | Boolean | 查询是否成功。 |
resultMsg | String | 查询失败后的返回值。 |
创建热修复资源
request - CreateMcubeHotpatchResourceRequest
参数名称 | 类型 | 说明 |
onexFlag | Boolean | 固定值:true。 |
fileUrl | String | 上传热修复资源文件的地址。 |
productVersion | String | 热修复资源对应的应用版本。 |
platform | String | 热修复资源包支持的平台,Android 或 iOS。 |
fixDesc | String | 对热修复资源包的描述。 |
response - CreateMcubeHotpatchResourceResponse
{
"createHotpatchResourceResult": {
"hotpatchResourceId": "2172",
"success": true
},
"requestId": "6D9405CA-9992-19FC-A027-0F3F9814AF68",
"resultCode": "OK"
}获取热修复资源包列表
request - ListMcubeHotpatchResourcesRequest
参数 | 类型 | 含义 |
pageNum | Integer | 页数 |
pageSize | Integer | 每页数量 |
response - ListMcubeHotpatchResourcesResponse
{
"listHotpatchResourceResult": {
"hotpatchResourceInfo": [
{
"appCode": "ONEXPRE22BA951112038-default",
"creator": "default",
"downloadUrl": "https://pre-mpaas.mpaascloud.com/ONEXPRE22BA951112038-default/hotpatch/ONEXPRE22BA951112038_ANDROID-default/android/1.0.0/81c90a2cafdc6dfc54201e70845b5708/mpaas_a.jar;https://pre-mpaas.mpaascloud.com/ONEXPRE22BA951112038-default/hotpatch/ONEXPRE22BA951112038_ANDROID-default/android/1.0.0/81c90a2cafdc6dfc54201e70845b5708/mpaas_a.jar",
"fileSize": "10820",
"gmtCreate": "1770634587000",
"gmtModified": "1770634587000",
"hotpatchVersion": "81c90a2cafdc6dfc54201e70845b5708",
"id": 2172,
"md5": "81c90a2cafdc6dfc54201e70845b5708",
"memo": "test",
"modifier": "default",
"platform": "android",
"productId": "ONEXPRE22BA951112038_ANDROID-default",
"productVersion": "1.0.0",
"publishPeriod": 0,
"sourceName": "mpaas_a.jar"
}
],
"success": true
},
"requestId": "33E1C7A2-5FA5-16A9-83C9-EC5C8D85B67D",
"resultCode": "OK"
}返回值说明
字段 | 含义 |
appCode | appCode,格式为 :appId-workspaceId。 |
creator | 创建人 |
downloadUrl | 热修复资源的下载地址 |
fileSize | 热修复资源文件大小 |
gmtCreate | 热修复资源创建时间 |
gmtModified | 热修复资源更新时间 |
id | 热修复资源主键 |
md5 | 热修复资源文件的 MD5 值 |
memo | 热修复资源文件描述 |
modifier | 更新人 |
platform | 支持的平台 |
productId | 产品 ID,格式为:appId_platform-workspaceId。 |
productVersion | 热修复资源包对应的应用版本号 |
publishPeriod | 发布状态
|
sourceName | 热修复资源包名称 |
创建热修复发布任务
request - CreateMcubeHotpatchTaskRequest
参数 | 类型 | 含义 |
platform | String | 支持的平台类型,应与热修复资源的类型一致。取值为Android 或 iOS。 |
memo | String | 热修复发布任务的描述 |
packageId | Long | 要发布的热修复资源包主键 |
publishType | Integer | 发布类型
|
publishMode | Integer | 发布模式
|
whitelistIds | String | 白名单发布时,使用的白名单资源包主键,多个使用逗号分隔。 |
greyConfigInfo | String | 灰度发布的高级规则,具体描述见 灰度发布高级规则描述。 |
greyEndtimeData | String | 时间窗灰度发布的截止时间,格式为 |
greyNum | Long | 时间窗灰度的截止人数 |
syncMode | String | 同步模式,固定值为 0。 |
灰度发布高级规则描述
名称 | 类型 | 说明 |
ruleElement | String | 规则类型
|
value | String | 规则值,多个使用 |
operation | Integer | 操作关系
说明
|
response - CreateMcubeHotpatchTaskResponse
{
"createHotpatchTaskResult": {
"hotpatchTaskId": "10623",
"success": true
},
"requestId": "05AE738B-9A45-16DA-AC88-155FB324A069",
"resultCode": "OK"
}查询热修复发布任务列表
request - ListMcubeHotpatchTasksRequest
参数 | 类型 | 含义 |
id | Long | 要查询的热修复资源包主键 |
response - ListMcubeHotpatchTasksResponse
{
"listHotpatchTasksResult": {
"hotpatchTaskInfo": [
{
"appCode": "ONEXPRE22BA951112038-default",
"creator": "default",
"gmtCreate": "1770636082000",
"gmtModified": "1770636082000",
"greyConfigInfo": "{\"operator\":\"and\",\"defaultResult\":false,\"subRules\":[{\"operator\":\"contains\",\"defaultResult\":false,\"left\":[\"潍坊市\"],\"right\":\"city\"},{\"operator\":\"vLimitIn\",\"defaultResult\":false,\"left\":{\"upper\":\"4.2.0\",\"lower\":\"4.1.2\"},\"right\":\"osVersion\",\"exclusive\":false},{\"operator\":\"contains\",\"defaultResult\":false,\"left\":[\"阿里巴巴\"],\"right\":\"isp\"}]}",
"greyNum": 0,
"id": 10624,
"memo": "test",
"modifier": "default",
"packageId": 2172,
"platform": "android",
"productId": "ONEXPRE22BA951112038_ANDROID-default",
"productVersion": "1.0.0",
"publishMode": 1,
"publishType": 2,
"taskStatus": 1,
"whitelistIds": "4632,4631"
}
],
"success": true
},
"requestId": "A391A2A4-0352-1B2D-AB32-79FEA9528166",
"resultCode": "OK"
}返回值说明
名称 | 含义 |
appCode | appCode,格式为:appId-workspaceId。 |
creator | 创建人 |
gmtCreate | 热修复资源发布任务创建时间 |
gmtModified | 热修复资源发布任务更新时间 |
greyConfigInfo | 灰度发布任务的高级规则,具体描述见 greyConfigInfo 字段内容解释。 |
greyNum | 时间窗灰度发布任务灰度人数 |
id | 热修复发布任务主键 |
memo | 热修复发布任务描述 |
modifier | 更新人 |
packageId | 发布任务对应的热修复资源包主键 |
platform | 热修复资源支持的平台:Android 或 iOS。 |
productId | 产品 ID,格式为:appId_platform-workspaceId。 |
productVersion | 热修复资源包对应的应用版本号 |
publishMode | 发布模式
|
publishType | 发布类型 2:灰度发布 3:正式发布 |
taskStatus | 任务状态
|
whitelistIds | 白名单灰度发布的白名单主键,多个使用逗号分隔。 |
greyConfigInfo 字段内容解释
名称 | 类型 | 说明 |
operator | String | 规则关系,and 表示“与”规则,对 subRules 里的结果进行“与”操作。 |
defaultResult | boolean | 默认返回的结果 |
subRules | List | 规则集合 |
operator | String | 规则名称
|
left | List/Object |
|
right | String | 规则类型名称 |
defaultResult | Boolean | 默认结果 |
查询热修复发布任务详情
request - QueryMcubeHotpatchTaskDetailRequest
参数 | 类型 | 含义 |
taskId | Long | 要查询的热修复发布任务主键 |
response - QueryMcubeHotpatchTaskDetailResponse
{
"queryHotpatchTaskDetailResult": {
"hotpatchTaskDetail": {
"appCode": "ONEXPRE22BA951112038-default",
"creator": "default",
"downloadUrl": "https://pre-mpaas.mpaascloud.com/ONEXPRE22BA951112038-default/hotpatch/ONEXPRE22BA951112038_ANDROID-default/android/1.0.0/81c90a2cafdc6dfc54201e70845b5708/mpaas_a.jar;https://pre-mpaas.mpaascloud.com/ONEXPRE22BA951112038-default/hotpatch/ONEXPRE22BA951112038_ANDROID-default/android/1.0.0/81c90a2cafdc6dfc54201e70845b5708/mpaas_a.jar",
"fileSize": "10820",
"gmtCreate": "1770636082000",
"gmtModified": "1770636082000",
"gmtModifiedStr": "2026-02-09 19:21:22",
"greyConfigInfo": "{\"operator\":\"and\",\"defaultResult\":false,\"subRules\":[{\"operator\":\"contains\",\"defaultResult\":false,\"left\":[\"潍坊市\"],\"right\":\"city\"},{\"operator\":\"vLimitIn\",\"defaultResult\":false,\"left\":{\"upper\":\"4.2.0\",\"lower\":\"4.1.2\"},\"right\":\"osVersion\",\"exclusive\":false},{\"operator\":\"contains\",\"defaultResult\":false,\"left\":[\"阿里巴巴\"],\"right\":\"isp\"}]}",
"greyNum": 0,
"id": 10624,
"md5": "81c90a2cafdc6dfc54201e70845b5708",
"memo": "test",
"modifier": "default",
"packageId": 2172,
"platform": "android",
"productId": "ONEXPRE22BA951112038_ANDROID-default",
"productVersion": "1.0.0",
"publishMode": 1,
"publishPeriod": 2,
"publishType": 2,
"releaseVersion": "81c90a2cafdc6dfc54201e70845b5708",
"ruleJsonList": [
{
"operation": "1",
"ruleElement": "city",
"ruleType": "0",
"value": "潍坊市"
},
{
"operation": "3",
"ruleElement": "osVersion",
"ruleType": "0",
"value": "4.1.2-4.2.0"
},
{
"operation": "1",
"ruleElement": "isp",
"ruleType": "0",
"value": "阿里巴巴"
}
],
"sourceName": "mpaas_a.jar",
"taskStatus": 1,
"taskVersion": 1770636082770,
"whitelist": [
{
"appCode": "ONEXPRE22BA951112038-default",
"gmtModified": "1770285152000",
"id": 4631,
"status": 1,
"whiteListCount": 0,
"whiteListName": "234"
},
{
"appCode": "ONEXPRE22BA951112038-default",
"gmtModified": "1770285156000",
"id": 4632,
"status": 1,
"whiteListCount": 0,
"whiteListName": "asdf"
}
],
"whitelistIds": "4632,4631"
},
"success": true
},
"requestId": "C09AF6B5-2F37-1338-8CB1-D28D3580BB11",
"resultCode": "OK"
}返回值说明
名称 | 含义 |
appCode | 应用编码,格式为:appId-workspaceId。 |
creator | 创建人 |
downloadUrl | 对应的热修复资源包文件下载地址 |
fileSize | 对应的热修复资源包文件大小 |
gmtCreate | 创建时间 |
gmtModified | 更新时间 |
greyConfigInfo | 灰度发布高级规则,具体描述见 查询热修复发布任务列表 中的相关描述。 |
greyNum | 时间窗灰度发布任务的截止人数 |
id | 热修复发布任务主键 |
md5 | 对应的热修复资源文件的 MD5 值 |
memo | 对应的热修复发布任务描述 |
modifier | 更新人 |
packageId | 对应的热修复资源包主键 |
platform | 热修复资源支持的平台,分为 Android 或 iOS。 |
productVersion | 热修复资源匹配的应用版本 |
publishMode | 发布模式
|
publishType | 发布类型
|
sourceName | 对应的热修复资源文件名称 |
taskStatus | 热修复发布任务状态
|
whitelistIds | 白名单灰度发布的白名单主键,多个使用逗号分隔。 |
ruleJsonList | 发布高级规则的对象形式,详见下文 发布高级规则的对象形式 ruleJson 描述。 |
whitelist | 白名单灰度发布使用的白名单详情,详见下文 白名单灰度发布白名单详情。 |
发布高级规则的对象形式 ruleJson 描述
名称 | 含义 |
operation | 高级规则模式
|
value | 高级规则的值,不同的 operation 对应不同的格式。
|
ruleType | 规则类型,当前值只有 0。 |
ruleElement | 高级规则名称。
|
白名单灰度发布白名单详情
名称 | 含义 |
status | 状态
|
whitelistCount | 白名单中值数量 |
AppCode | 应用编码 |
idType | 目前值为 userId |
business | 业务类型 |
id | 白名单主键 |
whitelistName | 白名单名称 |
修改热修复发布任务状态
request - UpdateMcubeHotpatchTaskStatusRequest
参数 | 类型 | 含义 |
taskId | Long | 要修改的热修复发布任务主键 |
taskStatus | Integer | 要修改到的热修复发布任务状态
|
packageId | Long | 要修改的热修复发布任务对应的热修复资源的主键 |
bizType | String | 默认值:hotpatch |
response - UpdateMcubeHotpatchTaskStatusResponse
{
"requestId": "40EE22B7-EDF6-1C2A-84CF-9866656573EB",
"resultCode": "OK",
"updateHotpatchTaskStatusResult": {
"result": "处理成功",
"success": true
}
}创建热修复回滚任务
request - CreateMcubeHotpatchRollbackTaskRequest
参数 | 类型 | 含义 |
id | Long | 要创建回滚任务的热修复资源主键 |
productVersion | String | 热修复资源对应的应用版本 |
productId | String | 格式为:appId_platform-workspaceId。 |
response - CreateMcubeHotpatchRollbackTaskResponse
{
"createHotpatchRollbackTaskResult": {
"rollbackTaskId": "10627",
"success": true
},
"requestId": "B7A55C9D-E521-1E44-9D3B-91B75D1CDC62",
"resultCode": "OK"
}删除热修复资源
request - DeleteMcubeHotpatchResourceRequest
参数 | 类型 | 含义 |
id | Long | 要删除的热修复资源主键 |
appCode | String | 格式为:appId-workspaceId。 |
response - DeleteMcubeHotpatchResourceResponse
{
"deleteHotpatchResourceResult": {
"deleteResult": "处理成功",
"success": true
},
"requestId": "7374F01F-552A-1C0D-99B9-E4E8F08EE979",
"resultCode": "OK"
}