AZ TUTORIALS · 接口参考
RAZER · API 文档
RAZER(雷蛇) 通过本机 HTTP 指令调用,格式为 /cmd?fun=指令名&参数。
| 项目 | 值 |
|---|---|
| 手机脚本 | http://127.0.0.1:8844/cmd? |
| 电脑调用 | http://设备局域网IP:8844/cmd? |
| 请求方式 | GET |
| 结果文件 | /var/mobile/zorroresult.plist |
调用前准备
- 在 RAZER 设置的脚本选项中,打开 「启用 HTTP 脚本指令」。
- 每次调用任何指令前,都必须先把 RAZER 启动到前台:
lua
runApp("razer")
mSleep(3 * 1000)返回值
指令采用同步方式返回,调用后直接返回 JSON:
json
{"retcode": 1, "msg": "结果描述"}同时会写入结果文件 /var/mobile/zorroresult.plist。调用 getcurrentrecordparam 时,该文件会多一个 data 节点,里面是参数信息。
retcode | 含义 |
|---|---|
1 | 执行正常完成 |
0 | 执行出错 |
2 | 正在执行(仅结果文件,HTTP 方式不会返回) |
10 | 运行环境异常 |
100 | 产品未激活或已过期 |
接口一览
| 功能 | 指令 | 参数 |
|---|---|---|
| 一键新机 | newrecord | — |
| 设置伪装 / 备份的 App | setparam | fakeapps backupapps |
| 下一条记录 | nextrecord | — |
| 生效指定记录 | activerecord | record |
| 删除指定记录 | deleterecord | record |
| 获取所有记录名 | getallrecords | — |
| 获取当前记录名 | getcurrentrecord | — |
| 设置当前记录坐标 | setcurrentrecordlocation | location |
| 清除当前记录坐标 | clearcurrentrecordlocation | — |
| 按当前 IP 重设坐标 | resetlocationbyip | — |
| 获取当前记录参数 | getcurrentrecordparam | — |
| 设置当前记录参数 | change | 见下文 |
| 重启服务 | rebootservice | — |
接口详情
一键新机
GET http://127.0.0.1:8844/cmd?fun=newrecord设置伪装 / 备份的 App
GET http://127.0.0.1:8844/cmd?fun=setparam&fakeapps=com.z.go1,com.z.go2&backupapps=com.z.go1,com.z.go2| 参数 | 说明 |
|---|---|
fakeapps | 只伪装、不备份的 App Bundle ID,逗号分隔。对应 App 里黑色勾的应用 |
backupapps | 伪装且备份的 App Bundle ID,逗号分隔。对应 App 里红色勾的应用 |
下一条记录
GET http://127.0.0.1:8844/cmd?fun=nextrecord生效指定记录
GET http://127.0.0.1:8844/cmd?fun=activerecord&record=记录ID| 参数 | 必填 | 说明 |
|---|---|---|
record | 是 | 记录 ID,中文需 URL 编码 |
删除指定记录
GET http://127.0.0.1:8844/cmd?fun=deleterecord&record=记录ID| 参数 | 必填 | 说明 |
|---|---|---|
record | 是 | 记录 ID |
获取所有记录名
GET http://127.0.0.1:8844/cmd?fun=getallrecords获取当前记录名
GET http://127.0.0.1:8844/cmd?fun=getcurrentrecord设置当前记录坐标
GET http://127.0.0.1:8844/cmd?fun=setcurrentrecordlocation&location=经度,纬度| 参数 | 必填 | 说明 |
|---|---|---|
location | 是 | 格式 经度,纬度 或 经度_纬度,例如 121.4997,31.2394 |
清除当前记录坐标
GET http://127.0.0.1:8844/cmd?fun=clearcurrentrecordlocation按当前 IP 重设坐标
GET http://127.0.0.1:8844/cmd?fun=resetlocationbyip按当前网络 IP 重新设置当前记录的坐标。
获取当前记录参数
GET http://127.0.0.1:8844/cmd?fun=getcurrentrecordparam参数写入 /var/mobile/zorroresult.plist 的 data 节点。这里拿到的参数名可以直接用于下面的 change 指令。
设置当前记录参数
GET http://127.0.0.1:8844/cmd?fun=change&idfa=AFF18523-B306-4E04-BB4D-2DD6CE48C694&idfv=ADF28523-B306-4E04-BB4D-2DD6CE48C694&os=12.1.3&product=iPhone9%2C2&remark=xxxx- 只需要传要修改的参数,没传的保持不变。
- 参数值必须 URL 编码,例如
iPhone9,2要写成iPhone9%2C2。
| 参数 | 说明 |
|---|---|
name | 设备名称,对应 DeviceName,如 xxxx iPhone |
os | 系统版本,如 11.2.6,对应 SystemVersion。会连带重置 SystemBuildVersion、Safari 等相关参数 |
idfa | 对应 AdvertisingIdentifier |
idfv | 对应 IdentifierForVendor |
product | 产品类型,如 iPhone8,1,对应 ProductType。会连带重置 HWModel、屏幕分辨率等相关参数 |
UniqueDeviceID | UDID,仅对调用私有函数的企业版 App 有用 |
remark | 备注。显示在记录列表中该记录下方,和在记录列表左滑手动备注效果一样 |
以上为官方已公开的参数,其他参数待整理。
重启服务
GET http://127.0.0.1:8844/cmd?fun=rebootservice重启 RAZER 的后台服务。
Lua 示例(触动精灵)
lua
local sz = require("sz")
local http = require("szocket.http")
local BASE = "http://127.0.0.1:8844/cmd?fun="
-- URL 编码(中文、逗号等需要)
function urlEncode(s)
s = string.gsub(s, "([^%w%.%- ])", function(c)
return string.format("%%%02X", string.byte(c))
end)
return string.gsub(s, " ", "+")
end
-- 统一调用:返回 retcode 和完整 JSON
function RAZER(query)
local res, code = http.request(BASE .. query)
if code ~= 200 then return nil end
local r = sz.json.decode(res)
return r.retcode, r
end
-- 启动(所有指令之前必须执行)
runApp("razer")
mSleep(3 * 1000)
-- 1. 设置要伪装的 App:微信只伪装,支付宝伪装 + 备份
RAZER("setparam&fakeapps=com.tencent.xin&backupapps=com.alipay.iphoneclient")
-- 2. 一键新机
local ret, r = RAZER("newrecord")
if ret == 100 then
toast("未激活或已过期", 2)
elseif ret ~= 1 then
toast("新机失败:" .. tostring(r and r.msg), 2)
end
-- 3. 修改当前记录参数(值要 URL 编码)
RAZER("change&os=" .. urlEncode("12.1.3")
.. "&product=" .. urlEncode("iPhone9,2")
.. "&remark=" .. urlEncode("微信001"))
-- 4. 设置坐标
RAZER("setcurrentrecordlocation&location=121.4997661114,31.2394855667")
-- 5. 生效指定记录
RAZER("activerecord&record=" .. urlEncode("微信001"))使用教程见 RAZER 使用教程。
提示
软件界面和支持范围可能随版本更新。执行清理、重置或删除操作前,请先备份重要数据。
