雲手機控制 API
蜂巢雲盒雲手機 SDK REST API 完整文檔,涵蓋系統資訊、容器管理、代理設置、配置更新等所有介面的詳細說明與範例。
最后更新:
功能介紹
蜂巢雲盒提供完整的 REST API 介面,支援通過 HTTP 方式對雲手機進行遠端控制,涵蓋設備資訊查詢、雲手機增刪改查、代理管理、系統配置更新等功能,便於整合到自動化系統或自訂管理平台。
介面基礎位址:
http://設備IP:3001/api/1_0
通用說明
| 項目 | 說明 |
|---|---|
| 協定 | HTTP |
| 返回格式 | JSON |
| 授權要求 | 部分介面需要授權(詳見各介面說明) |
| 設備 IP | 在 NestBrowser 用戶端中獲取 |
GET /systeminfo
獲取設備系統資訊。
是否需要授權:否
返回參數:
{
"data": {
"id": "1",
"dev": "設備序號",
"mac": "02:42:53:7e:6b:88",
"cpu": "3.38%",
"mem": "57.44%--15.57GB",
"version": "1.1.35",
"sDisk": "13.52%-57.79GB",
"nvmDisk": "11.87%-468.38GB",
"temp": "52.69°C",
"desc": "授權有效,截止時間:2024-10-12 15:48:20"
}
}
| 欄位 | 說明 |
|---|---|
| cpu | CPU 使用率 |
| mem | 記憶體使用率及總量 |
| sDisk | 系統碟使用情況 |
| nvmDisk | 資料碟使用情況 |
| temp | 設備溫度 |
| desc | 授權狀態及到期時間 |
POST /licenses
設置設備授權資訊。
是否需要授權:否
請求參數:
{
"license": "授權碼字元串"
}
返回結果:
{ "valid": true }
GET /get_container_list
獲取當前所有雲手機列表。
是否需要授權:否
返回參數:
[
{ "id": 1, "model": "Redmi-M2003J15SC" },
{ "id": 2, "model": "Redmi-M2003J15SC" }
]
GET /get_container_info/:id
獲取指定雲手機的詳細資訊。
是否需要授權:是
路徑參數::id — 雲手機 ID
返回參數:
{
"id": 1,
"model": "Redmi-M2003J15SC",
"status": "created",
"wifi_status": "created"
}
| status 值 | 說明 |
|---|---|
| created | 關機 |
| running | 開機 |
| wifi_status 值 | 說明 |
|---|---|
| created | 初始化中 |
| running | 可投屏 |
GET /get_online_index
獲取可用來創建雲手機的索引。
是否需要授權:是
返回:數字(可用的索引位置)
GET /get_img_list
獲取 MX 提供的鏡像列表。
是否需要授權:是
GET /get_model_list
獲取 MX 提供的機型列表。
是否需要授權:是
POST /create_container
創建雲手機執行個體。
是否需要授權:是
請求參數:
{
"tag": "mx-20250521-gms-normal",
"model": "Redmi-Note-7",
"amount": 1,
"dns": "223.5.5.5"
}
| 參數 | 必填 | 說明 |
|---|---|---|
| tag | 是 | 韌體版本號 |
| model | 是 | 機型名稱 |
| amount | 是 | 創建數量(≥1) |
| dns | 否 | DNS 伺服器位址 |
返回:true 或 false
GET /run/:id
啟動雲手機。
是否需要授權:是
返回:true 或 false
GET /stop/:id
關閉雲手機。
是否需要授權:是
返回:true 或 false
GET /remove/:id
刪除雲手機。
是否需要授權:是
返回:true 或 false
GET /updatedeclare/:id/:declare
更新雲手機描述資訊。
是否需要授權:是
路徑參數:
| 參數 | 說明 |
|---|---|
| :id | 雲手機 ID |
| :declare | 新的描述文字 |
返回:true 或 false
POST /s5_set
設置雲手機 SOCKS5 代理資訊。
是否需要授權:是
請求參數:
{
"id": "1",
"proxyurl": "base64編碼的代理資訊"
}
代理資訊需先 base64 編碼,原始格式:
{
"type": "socks5",
"lookupUrl": "https://nestbrowser.com/api/cpi/ip-lookup",
"proxy_status": 0,
"host": "1.1.1.1",
"port": "1000",
"user": "使用者名稱",
"password": "密碼"
}
返回:{ "valid": true }
GET /s5_query/:id
查詢雲手機代理資訊。
是否需要授權:是
返回:包含代理狀態的 JSON 資料
GET /s5_start/:id
啟動雲手機代理。
是否需要授權:是
返回:true 或 false
GET /s5_stop/:id
關閉雲手機代理。
是否需要授權:是
返回:true 或 false
GET /install_image/:tag
安裝鏡像。
是否需要授權:是
返回:true 或 false
GET /remove_image/:tag
刪除鏡像。
是否需要授權:是
返回:true 或 false
POST /update_config
修改雲手機配置資訊,包括 OAID、IMEI、GPS 等參數。
是否需要授權:是
請求參數:
{
"id": "12345",
"data": {
"oaid": {
"oaid": "d8a8d7f0-1a2b-3c4d-5e6f-7a8b9c0d1e2f",
"vaid": "v1234567890",
"uaid": "u9876543210",
"aaid": "a1234567890abcdef"
},
"gsm": {
"imei": "123456789012345",
"phone": "+8613812345678",
"modeType": "LTE"
},
"system": {
"timezone": "Asia/Shanghai",
"locale": "zh-CN"
},
"gps": [
"LatitudeDegrees=25.041026818001678",
"LongitudeDegrees=121.52334876982831",
"AltitudeMeters=1.60062531",
"BearingDegrees=0",
"SpeedMetersPerSec=0"
]
}
}
返回:true 或 false
ADB 連接埠規則
通過 API 獲取雲手機 ID 後,可按以下公式計算 ADB 連接埠:
ADB 連接埠 = 雲手機ID + 12000
連線範例:
# 雲手機 ID=1 時
adb connect 192.168.0.100:12001