云手机AI实践

本文介绍与AI工具和应用相关的云手机实践。

1 初阶:在云手机上使用AI应用

无影云手机支持在云手机内直接使用AI应用,且多个云手机实例可多开同时运行。云手机移动客户端支持录音、拍照或截图,让您能够使用多模态能力。

1.1 准备工作

在云手机上使用AI应用之前,请确保已经有可用的云手机实例。如果已有可用实例,您可以跳过准备工作。

  1. 创建用于容纳云手机实例的云手机实例组或云手机矩阵。本文以实例组为例。

    说明

    对于需要实名认证或海外服务的应用(例如ChatGPT),需要将实例组创建在非中国内地地域。

    如何创建实例组

    1. 登录无影云手机控制台

    2. 在左侧导航栏,选择资源管理 > 实例组

    3. 实例组页面上单击创建实例组

    4. 无影云手机—创建实例组页面上完成以下配置。

      配置项

      说明

      示例

      可用地域

      云手机实例组所在的地域。为降低延迟,建议选择用户所在地区附近的地域。

      华东1(杭州)

      付费类型

      可选项:

      • 包年包月:一种预付费模式,即先付费再使用,指定使用期限。无影云手机实例版矩阵版均支持该付费类型。

      • 按量付费:一种后付费模式,即先使用再付费。无影云手机实例版支持该付费类型,矩阵版不支持。

        说明

        在按量付费模式下,从该实例组创建成功的时间点开始,每4小时为一个计费单位时长,实例组释放成功的时间点所在的最后一个“4小时”时段结束时停止计费。如果扣费过程中实例欠费,则会立即停止计费,不再继续扣满4小时。关于按量付费模式的详细计费规则,请参见【公告】按量付费的计费单位时长变更

        重要

        云手机实例的运行状态不影响计费,将云手机实例关机不会停止云手机计费。

      详细信息,请参见产品计费

      包年包月

      规格

      规格分为轻量型、通用型、标准型、增强型和性能型,适用于不同的业务场景。例如,轻量型适用于托管轻量应用,如社群运营、图文网页自动化;标准型适用于多种场景,包括托管应用与交互。

      轻量型

      镜像类型

      可选项:

      • 系统镜像

      • 自定义镜像

      系统镜像

      网络类型

      可选项:

      • 基础共享网络和高级共享网络:包含免费的基础带宽,每台云手机的带宽峰值为5 Mbps,适用于对互联网要求较低的场景,且不支持公网ADB。

        说明

        共享网络的配额限制:

        • 共享网络的数量上限为10。

        • 上述配额与无影云电脑企业版共享。在无影云电脑企业版控制台上创建的基础办公网络数量,与无影云手机的共享网络数量之和上限为10。

      • VPC网络:支持公网ADB。

      • VPC网络:支持公网ADB。

      说明

      云手机标准网络为白名单功能。该功能目前处于定向邀测中,暂不对外开放。

      关于各类型网络的区别,请参见网络类型

      基础共享网络

      网络

      可选项:

      • 选择已有网络

      • 自动创建网络

        说明

        自动创建VPC网络的功能依赖云速搭 CADT(Cloud Architect Design Tools)产品,因此如果您使用RAM用户而非阿里云账号创建实例组,请务必先为该RAM用户授予AliyunCADTFullAccess权限策略。

      选择已有网络

      交换机

      当网络类型为VPC网络时,该配置项可见。可选项:

      • 自动管理交换机

      • 选择已有交换机

      自动管理交换机

      带宽包

      网络类型云手机标准网络时,才会显示此配置项。

      可选项:

      • 选择已有带宽包:如果此前已创建过带宽包,可以选择已有带宽包。

      • 创建带宽包:如果选择创建新的带宽包,则需要设置带宽包峰值(50~1000 Mbps)和私网IP网段

      选择已有带宽包

      绑定策略

      选择要为实例组绑定的管控策略。

      保持默认

      实例组名称

      长度不超过30个字符;请以大写字母、小写字母或汉字开头,不能以http://https://开头,仅支持中文、英文、数字、半角冒号(:)、下划线(_)、点号(.)和短划线(-)。

      DemoGroup

      购买数量

      实例组中包含的实例数量。

      1

      购买时长

      付费类型为包年包月时,该配置项可见。请选择购买时长,以及是否开启自动续费。

      1个月

    5. 仔细阅读所有服务协议的内容,然后单击立即购买

    6. (条件步骤)如果付费类型为包年包月,请在支付页面上确认配置信息和待付金额,并单击订购,然后根据界面提示完成支付操作。

      您可以在实例组页面上查看实例组的最新状态。

  2. 创建云手机实例。

    如何创建实例

    1. 登录无影云手机控制台

    2. 在左侧导航栏,选择资源管理 > 实例

    3. 实例页面上单击创建实例

    4. 创建实例对话框中完成以下配置,并单击立即创建

      配置项

      说明

      示例

      创建方式

      可选项:

      • 在已有实例组中创建

      • 创建新的实例组

        若选择此选项,请单击立即创建,并跳转至实例组创建页面。

      在已有实例组中创建

      实例组

      当选择在已有实例组中创建实例时,该配置项可见。

      为选择一个已有的实例组。

      DemoGroup

      实例数量

      当选择在已有实例组中创建实例时,该配置项可见。

      输入需要创建的实例数量。

      1

    5. 请根据情况执行以下操作之一:

      • 若上一步选择创建新的实例组,将跳转至实例组创建页面,请完成实例组创建。具体操作,请参见创建实例组

      • 若上一步选择在已有实例组中创建实例,将跳转至实例组扩容页面,请完成实例组扩容。具体操作,请参见扩容实例组

      您可以在实例页面上查看实例的最新状态。

1.2 操作步骤

在云手机上安装AI应用即可直接使用。您可以通过控制台安装,也可以在云手机上通过浏览器或应用商店安装。本文以通过控制台安装应用为例。

  1. 在控制台上传需要使用的AI应用。本文以通义App为例。

    1. 登录无影云手机控制台

    2. 在左侧导航栏,选择应用与文件 > 应用

    3. 应用页面上单击创建应用。

    4. 创建应用面板上完成以下配置。

      配置项

      说明

      示例

      应用名称

      填写应用的名称,长度不超过32个字符。请以大写字母、小写字母或汉字开头,不能以http://https://开头,仅支持中文、英文、数字、半角冒号(:)、下划线(_)、点号(.)和短划线(-)。

      钉钉

      选择地域

      选择应用的可用地域。为云手机实例安装应用时,只能选择实例所属地域下的应用。

      华东1(杭州)

      应用描述

      简单描述应用的用途和功能。

      办公通讯

      应用icon

      您可以单击上传本地文件,选择应用图标并上传。

      说明

      只支持上传.jpg、.jpeg、.png、.gif、.webp、.bmp、.wbmp格式的图片,图片大小不可超过1 MB。

      icon.png

      资源上传

      单击上传本地文件,并选择符合要求的文件。

      重要

      请使用从官方应用商店或可信的第三方来源获取的应用安装包。

      说明

      仅支持上传.apk格式的文件,文件大小不可超过5 GB。

    5. 选择我已经阅读并同意《不侵权承诺及免责声明》,并单击确定

  2. 将上传好的应用安装在云手机上。

    1. 登录无影云手机控制台

    2. 在左侧导航栏,选择应用与文件 > 应用

    3. 应用页面上,从应用列表顶部的地域下拉列表中选择待安装应用的实例组或实例所属的地域。

    4. 找到目标应用,在操作列中单击安装应用

    5. 安装应用面板上根据需要执行以下操作,并单击开始安装

      • 为指定的实例安装应用:在选择安装对象区域选择实例,并在列表中选择一个或多个实例。

        说明

        批量操作时,实例版每次最多可以选择1000个实例矩阵版每次最多可以选择100个实例

      • 为指定实例组内的所有实例安装应用:在选择安装对象区域选择实例组,并在列表中选择一个或多个实例组。

    6. 在确认对话框中单击确定

      您可以在任务中心页面查看任务进度详情。

  3. 连接云手机。您可以通过以下任一方式连接云手机。

    管理员通过控制台连接

    您作为管理员,可以在控制台上直接连接云手机。

    1. 登录无影云手机控制台

    2. 在左侧导航栏,选择资源管理 > 实例

    3. 实例页面上找到需要连接的云手机实例,然后在操作列单击连接

    4. 连接页面,单击云手机卡片中央的连接图标。

      16FFAD4D-5A2E-4857-88A9-BC56363D53C2

    终端用户通过无影客户端连接

    您将云手机实例分配给终端用户后,终端用户可以登录无影客户端连接云手机。

    步骤1:为用户账号分配云手机
    1. 登录无影云手机控制台

    2. 在左侧导航栏,选择资源管理 > 实例

    3. 实例页面上找到待分配的云手机,操作列中单击 ⋮ 图标,并选择分配用户

    4. 分配用户面板的可选择用户区域内选择一个用户账号,并在面板底部单击确定

      说明

      您可以单击立即前往,并到无影云电脑企业版控制台创建用户账号。创建完毕后,请务必在可选择用户区域右上角单击图标。

      分配成功后,该用户账号的邮箱或手机号码将收到登录凭证。

    5. (可选)分配成功后,如需取消分配,请在实例页面上找到目标云手机,操作列中单击 ⋮ 图标,并选择取消分配

    步骤2:终端用户连接云手机

    终端用户可以通过电脑端、Web端或移动端连接云手机。本文以电脑端为例。

    1. 打开客户端,在顶部选择企业版&商业版,在底部选择同意隐私政策,并输入登录凭证中的组织ID办公网络ID,然后点击图标。pg_enter_orgid_or_networkid.png

    2. 账号密码登录方式下的用户名密码文本框中输入登录凭证中的用户名和密码,并点击图标。

      说明

      使用初始密码登录时,请按照提示设置您的自定义密码。初始密码有效期为3天。若已过期,请点击忘记密码来获得新的初始密码。

      pg_enter_username_and_pw.png

      登录成功后,即可在客户端上看到管理员为您分配的云资源,例如云电脑和云应用。

    3. 在客户端的云资源列表页上,点击云资源卡片上的图标,即可开始使用。

    开发者用户通过ADB连接

    开发者用户可以通过ADB连接云手机。具体操作,请参见如何通过ADB连接云手机

  4. 在云手机上使用AI应用。连接云手机后,即可像在普通手机上使用应用。

    ex_ai_app_on_cloud_phone

2 中阶:使用AI工具操控云手机

除了在云手机上使用AI应用之外,您也可以利用AI工具来直接操控云手机。本文以通过大模型服务平台百炼操控云手机为例。

2.1 方式一:使用MobileAgent+ADB操控云手机

2.1.1 效果演示

以下视频演示了向AI工具发出指令“帮我在闲鱼查询一下大明湖景点的门票,并查看第一家的详情”,并由AI工具自行分解任务以及操控云手机执行该任务的过程。

2.1.2 准备工作

  • 获取关键信息

    • 获取大模型服务平台百炼API Key。具体操作,请参见账号设置

  • 配置本地电脑环境

    • 安装Git。[官方网站]

    • 安装Python。[官方网站]

      本文需要使用Python自带的包管理工具pip工具来安装相关依赖。

    • 安装ADB(Android Debug Bridge)。

      Windows

      访问官方网站并下载。

      macOS

      • 方法1:访问官方网站并下载。

      • 方法2:如果您的电脑上已安装HomeBrew,可执行以下命令来安装ADB:

         brew install android-platform-tools --cask
    • 配置云手机密钥。

      准备ADB密钥对并为云手机实例绑定ADB密钥对后,才能通过ADB工具安全地连接云手机。具体操作,请参见管理密钥

      说明

      绑定密钥对之后,为了确保能在本地通过ADB登录,您需要将该密钥对的私钥adbkey存储在以下目录:

      • Windows操作系统:%USERPROFILE%\.android目录。

      • macOS操作系统:~/.android目录。

      • Linux操作系统:~.android目录。

  • 配置云手机

    • 在云手机实例上安装ADBKeyBoard,并在云手机系统设置中将默认输入法切换为ADB Keyboard。

      ADBKeyBoard是一款Android虚拟键盘,与AI工具配合使用效果较好,可以解决中文字符输入问题。[官方网站 | 快捷下载]

    • 为云手机实例开启一键ADB。具体操作,请参见一键ADB(推荐)

2.1.3 操作步骤

说明

下文所述的操作方式是命令行方式,略去了演示视频中呈现的Web页面部署步骤。

  1. 安装qwen模型所需的依赖项。

    pip install qwen_agent qwen_vl_utils numpy torch torchvision pillow
    说明

    如果提示找不到pip命令,可能是因为您尚未安装Python。请按照准备工作中的说明安装。

  2. 安装通义Mobile-Agent。

    通义Mobile-Agent是阿里云通义实验室推出的多模态智能体框架,支持跨平台自动化操作,能在手机、电脑等设备上执行复杂任务。

    git clone https://github.com/X-PLUG/MobileAgent.git
  3. 进入mobile_v3安装路径。

    cd MobileAgent/Mobile-Agent-v3/mobile_v3
  4. 运行通义Mobile-Agent。

    python run_mobileagentv3.py \
        --adb_path "<adb_path>" \
        --api_key "<apikey_of_vllm_service>" \
        --base_url "<baseurl_of_vllm_service>" \
        --model "<model_of_vllm_service>" \
        --instruction "<your_instruction>" \
        --add_info "<optional_info>"
    • <adb_path>替换为adbkey文件的路径。如果您已按照本文要求,将adbkey文件保存在.android目录中,则该值可以直接填写adb

    • <apikey_of_vllm_service>替换为大模型服务的API Key。

    • <baseurl_of_vllm_service>替换为大模型服务的Base URL。

    • <model_of_vllm_service>替换为大模型的代号。

    • <your_instruction>替换为您的指令。

    • <optional_info>为可选信息,可以留空。

2.1.4 示例代码

上文中的效果演示视频的示例代码如下。

python run_mobileagentv3.py --adb_path "adb" --api_key "sk-****f219" --base_url "https://dashscope.aliyuncs.com/compatible-mode/v1" --model "qwen-vl-max" --instruction "帮我在闲鱼查询一下大明湖景点的门票,并查看第一家的详情" --add_info ""
  • <apikey_of_vllm_service>:本示例中使用的是大模型服务平台百炼API Key,可从控制台获取。

  • <baseurl_of_vllm_service>:本示例中使用的是大模型服务平台百炼,因此该值固定填写为https://dashscope.aliyuncs.com/compatible-mode/v1

  • <model_of_vllm_service>:本示例中使用的是图片理解模型通义千问VL-Max,其代号为qwen-vl-max。关于更多模型的详细信息,请参见大模型服务平台百炼控制台的模型广场页面。

  • <your_instruction>:本示例中使用的指令是帮我在闲鱼查询一下大明湖景点的门票,并查看第一家的详情

2.1.5 实况代码

以下实况代码展示了上述操作步骤在命令行工具中的实际运行情况(运行通义Mobile-Agent的步骤结果在视频中已呈现,故此处不包含)。您可以通过控制按钮来播放和暂停实况,或者跳到上一个或下一个关键点。

说明

实况代码为纯文本格式,您可以直接复制其中的代码。

2.2 方式二:使用AgentBay+MCP操控云手机

无影AgentBayAI 时代的Agent云基础设施, 面向企业、开发者、AI厂商,提供可一键配置的AI Agent任务执行工具和执行环境。您可以通过无影APIAgentBay MCP Server快速集成,并调用相关工具获取Serverless服务。

无影AgentBayMobileUse解决方案可在云端提供移动端操作环境,支持移动应用的智能化操作。通过应用界面的精准识别和控制,配合智能调度系统实现多任务并行处理,为移动应用测试和自动化场景提供稳定可靠的解决方案。

2.2.1 创建API Key

API Key是调用无影AgentBay资源的凭证。您最多可以创建10API Key。

  1. 登录AgentBay控制台

  2. 在左侧导航栏中单击服务管理

  3. 服务管理页面上单击创建API KEY

  4. 创建API KEY对话框中输入名称,并单击确定

    重要

    为保障数据安全,请严格保密API Key,避免任何形式的外泄或共享。

创建成功后,请在服务管理页面复制API Key。

2.2.2 获取MCP地址

  1. 登录AgentBay控制台

  2. 在左侧导航栏中单击服务管理

  3. 服务管理页面上,单击操作列中的查看MCP地址

  4. MCP地址对话框中,单击Mobile页签,然后单击复制代码,即可获取MCP地址。

    示例代码:

    {
      "mcpServers": {
        "wuying_mcp_server": {
          "url": "https://agentbay.wuying.aliyuncs.com/sse?APIKEY=akm-****1091&IMAGEID=mobile_latest"
        }
      }
    }

2.2.3 配置MCP服务

在支持MCP的工具中添加MCP地址。下文以Cursor V1.6.42版本为例。

  1. 打开Cursor Settings面板,在左侧导航栏中单击MCP

  2. MCP面板上单击Add Custom MCP

    说明

    如果已添加其他MCP服务,则单击New MCP Server

  3. mcp.json文件中粘贴此前复制的MCP地址,并保存文件,即可完成MCP服务配置。

2.2.4 操控云手机

接下来,您就可以在Cursor的聊天面板上通过自然语言来操控云手机了。

请观看以下演示视频。