更新时间:2024-01-31 GMT+08:00
分享

文件预置

业务场景示例

需要在服务器上的所有云手机中预置文件。

例如:推流二进制文件、保活脚本文件、应用行为监控文件等。

操作步骤

  1. 参考获取云手机列表,从列表中选定一台云手机,将需要打包的文件放入到该云手机的目标路径下。

    例如:服务器上云手机需要在/data/local/huawei/、/data/local/tmp/路径下分别部署test.txt和test.sh文件。将test.txt、test.sh放入选定手机的/data/local/huawei/、/data/local/tmp/目录下。

  2. 将文件打包成配置文件tar包并上传到OBS桶。

    调用示例:

    POST https://${CPH Endpoint}/v1/${project_id}/cloud-phone/phones/batch-storage 
    Header: 
    Content-Type: application/json 
    X-Auth-Token: ${token} 
    Body: 
    { 
        "storage_infos": [{ 
            "phone_id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", 
            "include_files": [ 
                "/data/local/huawei/test.txt", 
                "/data/local/tmp/test.sh" 
            ], 
            "bucket_name": "${bucket_name}", 
            "object_path": "apk/${package_name}_${version_name}.tar" 
        }] 
    }

    其中,

    • include_files中的元素为需要打包的文件在云手机中的绝对路径。
    • object_path中${package_name}仅支持com.cph.config、com.cph.config.level1、com.cph.config.level2中的一种,${ version_name }用于识别配置包版本,可自行定义。
  3. 参考推送应用tar包至服务器共享空间,将配置文件tar包推送到目标云手机服务器。

    调用示例:

    POST https://${CPH Endpoint}/v1/${projectId}/cloud-phone/phones/share-apps
    Header: 
    Content-Type: application/json 
    X-Auth-Token: ${token} 
    Body:
    { 
        "package_name": "${package_name}", 
        "bucket_name": "${bucket_name}",  
        "object_path": "apk/${package_name}_${version_name}.tar",
        "pre_install_app": 1, 
        "server_ids": [
            "${server_id1}",
            "${server_id2}"
        ] 
    }

    推送时需将"pre_install_app"参数设置为1。

  4. 重置或重启云手机,自动部署配置文件包中的文件到云手机对应位置。
    1. 配置文件包部署到云手机会占用云手机存储空间,建议配置文件不要过大。
    2. 建议仅使用一个配置文件包完成业务部署,将所需的文件都打包在com.cph.config包中,并且文件放置在云手机固定目录,方便文件统一管理。
    3. 如果当前支持的三个配置文件包均需预置,云手机在重置或重启时,会按照com.cph.config、com.cph.config.level1、com.cph.config.level2的顺序依次部署,如果有相同文件,则会依次覆盖。

相关文档