文档

创建云手机实例

更新时间:

本文介绍如何通过阿里云云手机 Java SDK调用RunInstances创建一台或多台云手机实例。

前提条件

创建云手机实例前,您必须提前查询以下信息:

背景信息

本文调用RunInstances接口创建并自动启动多台ECP实例。详情请参见RunInstances - 批量创建并启动实例

重要
  • 调用RunInstances会创建云手机实例等计费资源,会产生实际费用。如果您只需测试示例代码,可在代码中设置DryRun方法,只发送检查请求,不会创建实例。检查项包括是否填写了必需参数、请求格式、业务限制和ECP库存等。

  • 此示例通过阿里云Credentials工具托管AccessKey,来实现API访问的身份验证。具体配置操作,请参见身份验证配置

代码示例

以下代码适用于实例计费方式采用按量付费:

import com.alibaba.fastjson.JSONObject;
import com.aliyun.cloudphone20201230.Client;
import com.aliyun.cloudphone20201230.models.RunInstancesRequest;
import com.aliyun.cloudphone20201230.models.RunInstancesResponse;
import com.aliyun.teaopenapi.models.Config;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
public class RunInstances {
    private static final String REGION_ID = "cn-hangzhou";
    private static final String DOMAIN = "cloudphone.aliyuncs.com";
  
    public static void main(String[] args) throws Exception {
        Config config = new Config();
        config.setRegionId(REGION_ID);

      /**
       * 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。
       * 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
       * 通过阿里云Credentials工具托管AccessKey,来实现API访问的身份验证。
       */
       	com.aliyun.credentials.Client credentialClient = new com.aliyun.credentials.Client();
        config.setCredential(credentialClient);
      
        config.setEndpoint(DOMAIN);
        Client client = new Client(config);
        RunInstancesRequest request = new RunInstancesRequest();
        request.setRegionId(REGION_ID);
        request.setInstanceType("ecp.ce.large");
        request.setInstanceName("create-instance");
        request.setImageId("android_9_0_0_release_3013066_20220224.raw");
        request.setSecurityGroupId("sg-bp15g4ot7sncf8u*****");
        request.setVSwitchId("vsw-bp1kbwqsi4rk40*****");
        request.setEipBandwidth(5);
        RunInstancesResponse response = null;
        try {
            response = client.runInstances(request);
            System.out.println(JSONObject.toJSONString(response.getBody()));
        } catch (ServerException e) {
            e.printStackTrace();
        } catch (ClientException e) {
            System.out.println("ErrCode:" + e.getErrCode());
            System.out.println("ErrMsg:" + e.getErrMsg());
            System.out.println("RequestId:" + e.getRequestId());
        }
    }
}

执行结果

实际返回结果为:

{
 "instanceIds": {
  "instanceId": ["cp-bp1hxkw9p90****"]
 },
 "requestId": "BP12C8C4-3C65-427B-B470-3D2572881234"
}

相关文档

  • 本页导读 (1)
文档反馈