跳转到内容
Last updated

常用资源流程

执行写入示例前,先从列表命令取得真实 ID。将 ENV_ID、PHONE_ID、TEAM_APP_ID、GROUP_ID、FILE_ID 分别设为目标资源,它们代表不同资源类型。以下示例是独立操作,不是连续执行的批处理脚本。

浏览器环境与内核

ml-cli env find --keyword Amazon
ml-cli --timeout 30 env open --keyword Amazon --exact
ml-cli --timeout 30 env start --env-id "$ENV_ID" --is-headless false --cdp-evasion true
ml-cli env core-download --core 1:124 --core 2:146

find/open 可按名称、分组、标签、备注搜索,只有唯一候选才执行打开。加密环境可为 env start 提供 --encrypt-key。内核类型 1 为 Chrome、2 为 Firefox,每次 1~20 项,也可使用 JSON Cores。示例版本不代表当前一定可下载。

env create-quick 已提供分组、代理、凭据、地区和 IP 监控参数。fingerprint-refresh 支持 --browser-type-id、--operator-system-id、--ua-version、--advanced-setting;resolution-list 支持 --ua。set-group/set-remark 可选 --env-ids 或 --unique-ids。app-hide-accessibility --package-name 可重复传入(别名 --package-names)。完整字段见命令总表。

云手机

ml-cli cloudphone find --keyword android-test
ml-cli --timeout 120 cloudphone open --keyword android-test --headless false
ml-cli --timeout 120 cloudphone power-on --id "$PHONE_ID" --headless true --disable-money-saving-mode false
ml-cli --timeout 30 cloudphone close --keyword android-test

headless=false 显示云手机窗口,true 隐藏。开机还支持 --disable-money-saving-mode。按名称或关键词打开须有唯一匹配项。请求成功不等于串流或设备开机已经完成。

团队应用

team-app-list 查询团队应用库,app-list 查询应用市场。使用团队记录 ID,不是手机 ID 或市场 ID。列表中的 versionCode 是文本,但 --version-code 及 JSON versionCode 必须是有符号 i64 整数,不能传字符串、小数、版本名称或版本记录 ID。

team-app-list 默认 pageNo=1、pageSize=10,分页参数须在 u32 范围内。从 app-list 选择 PACKAGE_NAME 和整数 VERSION_CODE。版本更新仅支持商店应用,须选择同包名的其他可用版本,是否可用由后端校验。

ml-cli cloudphone team-app-list --app-name Facebook --page-no 1 --page-size 10
ml-cli cloudphone app-list --app-name Facebook
ml-cli --fail-on-business-error cloudphone team-app-create --package-name "$PACKAGE_NAME" --version-code "$VERSION_CODE"
ml-cli --fail-on-business-error cloudphone team-app-update-group --id "$TEAM_APP_ID" --is-all false --group-ids "$GROUP_ID"
ml-cli --fail-on-business-error cloudphone team-app-enable --id "$TEAM_APP_ID" --enabled false
ml-cli --fail-on-business-error cloudphone team-app-update-install-setting --id "$TEAM_APP_ID" --install-setting 2
ml-cli --fail-on-business-error cloudphone team-app-update-enable-root --id "$TEAM_APP_ID" --enable-root false
ml-cli --fail-on-business-error cloudphone team-app-update-version --id "$TEAM_APP_ID" --package-name "$PACKAGE_NAME" --version-code "$VERSION_CODE"
ml-cli --fail-on-business-error cloudphone team-app-update-setting --id "$TEAM_APP_ID" --setting-type keep-alive --enabled false
ml-cli --fail-on-business-error cloudphone team-app-operate --id "$TEAM_APP_ID" --operation START --only-started-by-me true
ml-cli --fail-on-business-error cloudphone team-app-delete --id "$TEAM_APP_ID"

创建仅支持商店应用,返回 data.id,不支持自建 APK 上传。isAll=false 时分组 ID 必须非空;true 时可省略或传 null。安装策略 1 覆盖、2 跳过。删除仅移除团队记录及预装范围,保留设备已安装应用和数据。

配置接受 permission/keep-alive/auto-start/hide 或 PERMISSION/KEEP_ALIVE/AUTO_START/HIDE;操作接受 start/stop/restart/uninstall 或对应全大写。flags 与 JSON 均兼容上述精确写法,发送时统一为大写 API 枚举;其他值被拒绝。onlyStartedByMe 省略/null 默认为 false,enabled 缺失/null 被拒绝。

ml-cli --fail-on-business-error cloudphone team-app-update-setting --json-data '{"id":"123456","settingType":"KEEP_ALIVE","enabled":true}' --enabled false

版本/设置写入返回 data=null,仅确认保存,不代表设备完成。版本、权限、自启动由开机规则应用;保活/隐藏还可能由后端异步下发。批量返回 data=true 不保证每台设备成功。CLI 不自动开机、重试写入或轮询。批量卸载可删除设备应用数据,但保留团队预装配置。用 team-app-list 回读设置,设备效果单独验证。

云存储

ml-cli cloud-storage info
ml-cli cloud-storage list --keyword video --page-no 1 --page-size 20
ml-cli cloud-storage presign --file-name video.mp4

上传分三步:presign、向返回的 presignedUrl HTTP PUT 文件二进制、使用返回 ID 执行 complete --id。带上返回的上传 headers,PUT 成功后才能 complete。若沙箱/网络阻止 PUT,应取得网络权限或由用户在本机执行同一上传命令。预签名 URL 有时效,不要公开。

curl -f -L -X PUT --upload-file ./video.mp4 "$PRESIGNED_URL"
ml-cli cloud-storage complete --id "$UPLOAD_ID"
curl.exe -f -L -X PUT --upload-file .\video.mp4 "$env:PRESIGNED_URL"
ml-cli cloud-storage complete --id "$env:UPLOAD_ID"
ml-cli cloud-storage labels
ml-cli cloud-storage label-create --label-name automation --color "#2F80ED"
ml-cli cloud-storage label-update --label-id "$LABEL_ID" --label-name automation-ready --color "#27AE60"
ml-cli cloud-storage file-labels --file-id "$FILE_ID"
ml-cli cloud-storage add-labels --file-id "$FILE_ID" --tag-id "$LABEL_ID"
ml-cli cloud-storage set-labels --file-id "$FILE_ID" --tag-id "$LABEL_ID"
ml-cli cloud-storage label-delete --label-id "$LABEL_ID"
ml-cli cloud-storage delete --file-id "$FILE_ID"

RPA 可通过 morelogin://cloudfile?ids=<fileId> 使用已上传文件,多 ID 用英文逗号分隔。保留 RPA 参数必需的 __Extra__ 元数据。调度及执行查询使用 schedule template-market/template-personal/list/create-once-task/cancel/subtask-list/subtask-detail/subtask-cancel。

云浏览器

ml-cli cloud-browser list --page-no 1 --page-size 10
ml-cli --timeout 30 cloud-browser start --env-id "$ENV_ID"
ml-cli cloud-browser connect --env-id "$ENV_ID"
ml-cli cloud-browser stop --env-id "$ENV_ID" --force false

这些命令管理远程云浏览器运行实例;env start/open 控制的是本地浏览器环境。start/stop/connect 使用独立参数与 JSON 契约,复用环境 ID 或端口前先查看帮助。

分组、标签、代理与查询元数据

ml-cli group list
ml-cli tag list
ml-cli proxy list
ml-cli env set-group --help
ml-cli env set-proxy --help
ml-cli env set-remark --help

列表/详情可返回 groupName(未分组为 null)、tagInfos(无标签为空数组)和浏览器 envRemark。标签 ID 保持字符串。表格输出优先显示这些字段,JSON 保留嵌套结构。分组、标签、代理的创建、编辑和删除参数均见命令总表。