前言
我们通过前边任何一种方式启动成功Autobot服务,就可以使用Autobot网页版实现手机设备得远程投屏控制。网页版本质也是通过调用autobot的http api和websocket api实现的投屏自动化和远程控制。
免费API就拥有的硬核功能
Autobot本质上提供了免费API和收费API(vip服务)。免费api就能你实现投屏控制,但是如果你需要更专业的功能,那么就需要使用收费版本的服务。
免费版本提供的功能有:
WebSocket Api全免费(包含实时投屏输入,通知监听,剪切板监听)。
Http Api的免费硬核功能(中文输入,执行shell命令(adb命令))。
Autobot为什么采用HTTP API/Websocket API?
市面上大部分的投屏或者群控软件都是使用开源的Scrcpy,Scrcpy是Socket+视频流方式实现的,体验方面更好是没问题的,但是也会带来一些缺点:
- 开发困难加大,私有自定义的协议,你得去看源码,看数据封包格式,对于语言不是C的朋友非常不友好。
- 通过Socket和视频流实现投屏控制,决定了他必须使用客户端(因为浏览器不支持socket,使用视频流意味着你得有对应得解码器)。性能方面当你群控100台设备得时候,同时解码100个视频流对于电脑性能也是一个非常大的挑战。
- 使用socket不利于远程传输,Http和Websocket API很容易放在公网上,更容易通过防火墙,通过浏览器就能实现远程批量管理。
- Scrcpy必须通过adb(有线或者无线)来实现投屏控制。
采用Http API和WebSocket API的好处:
- 接口协议公开,调用简单方便(是个开发者,都知道怎么调用Http API,WebSocketAPI大部分语言都支持)。
- 采用jpeg流的好处,如果你用OpenCV或者OCR,或者一些视觉AI的时候,那么使用图片流的优势就出来了。Tntok群控100台设备的时候,使用jpeg流直接渲染到canvas上,性能将比使用视频流更节省硬件性能。
- Scrcpy比较专注投屏控制。Autobot的HTTP API和WebSocket API不仅支持投屏还支持更多的硬核功能,比如屏幕布局,通知监听,控制方面(点击,长按,滑动,手势模拟),应用管理,文件接口,等。
- 对开发者友好,不管你是C,C++,Python,Go,Java,C#,Node.js还是JavaScript都非常简单。
- 更加方便的把你的设备映射到公网上(如果要做权限控制,通过管理反向代理API的权限能更容易的实现开发)。
Autobot服务可以做什么?
如果你还不明白Autobot是什么,我在说一遍,autobot是在你的手机上启动一个web服务,通过接口方式操作手机实现投屏自动化。
Autobot APK不是必须得,magisk包和rom集成方式,手机上无需安装autobot.apk就能实现控制。
手机上Autobot APP得作用是:
- 辅助启动autobot服务,对于没有root和magisk环境,不会rom集成得普通用户,通过adb启动Autobot服务。
- 能辅助显示当前手机Autobot的服务地址,一键复制。
- 辅助运行autox.js功能(Tntok自动安装的Autobot APP带autox.js执行环境,官网上下的Autobot没有autox.js执行环境)。
案例:
- Tntok投屏(投屏软件),PC调用多台手机的AutobotAPI实现群控功能,支持批量adb命令和批量autox.js代码。
- 集成Autobot服务autox.js(当手机启动成功Autobot服务后),autox.js通过调用本机Autobot 服务HttpAPi和Websocket API能实现免无障碍自动化,如果你能使用root方式(免无障碍,免usb调试)或者rom集成方式(免无障碍,免USB调试,免Root)会更加硬核。
- AutoJS PC版(图形化自定义操作步骤,一键生成autox.js代码)
Http API,WebSocket API:
1,官方文档 https://mobile.tntok.top/autobot_doc
2,Api POST(更新更加详细实时),另标明了收费和付费接口。
android-bot(js库,支持浏览器和node.js环境)
为什么要开发这个库,官方作者通过autobot服务开发了autobot网页端功能,tntok投屏服务,觉得应该把调用Autobot HttpAPI和WebsocketAPI提取成公共库,方便其他开发者进行二次开发,因此有了这个android-bot库。
npm仓库地址:https://www.npmjs.com/package/android-bot
github开源地址:https://github.com/automan-bot/android-bot
当然了,这个库是JavaScript库,如果你是其他语言,不代表你就用不了Autobot,只要你会的语言能调用Http API和WebSocket ,都能进行二次开发。
这个库的作用是,在HttpAPI和WebSocketAPI的基础上进行二次封装,调用将更加简单。
别急,为更多语言开发Autobot库有奖励
如果你愿意为autobot服务,封装其他语言的库(python,C,C++,java,Go等),非常欢迎。
第一 封装的库要简单易用
第二 要开源且提交在github上
做完这些事情后,联系QQ:476177419,我方技术人员审查后,将为你提供:
1,永久autobot vip服务,二级代理权(0.7折拿码权)
2,和autobot原作者一起交流,一起合作共赢