介绍
用于Web端设备远程管理
功能
系统支持
- 支持Android版本2.3.3 (SDK10) 到7.1 (SDK25))
- 支持Wear 5.1
- 无需root
Web浏览器管理设备
- 屏幕操作和显示(30-40fps)
- 支持PC机键盘输入到远程的设备(复制粘贴)
- 支持多点触控操作远程设备
- 支持adb connnect远程连接调试
- 拖拽安装APK
- 远程设备提供
- 设备信息的展示(如:网络状态,MIME,android版本,手机型号等等)
- 远程开关机,远程开关WIFI,截屏,LogCat等等
- 执行Shell命令
- 设备文件管理
主要依赖
Node.js >= 4.2 (latest stable version preferred)
ADB properly set up
RethinkDB >= 2.2
GraphicsMagick (for resizing screenshots)
ZeroMQ libraries installed
Protocol Buffers libraries installed
yasm installed (for compiling embedded libjpeg-turbo)
pkg-config so that Node.js can find the libraries
平台语言
- 页面html使用Pug模版引擎
- 前端使用的是Angularjs
- 后端使用的是Nodejs
- 数据库使用的是对象型数据库Rethinkdb
Rethinkdb
Rethinkdb 属于对象型数据库,使用的是json字符串格式保存数据。
目录详解
/.tx #集成翻译平台Transifex的相关配置,用于语言翻译
/bin #启动文件,调用的是lib/cli.js
/docker #Docker的相关配置
/lib #后端
/res #前端
/doc #文档说明,包含VNC,部署,API
/test #状态检测
/vendor #安装到手机上的应用和服务,包括minirev,minitouch,STFService
前端res
主要为Service服务和View页面两大部分
/app #前端web
- /components/stf #服务组件,用于与后端通讯
- /control-panes #页面,设备控制
- /device-list #页面,设备列表
- /docs #页面,帮助
- /layout #页面,布局
- /menu #页面,菜单
- /setting #页面,设置
- /terminal #页面,终端样式
- /user #页面,用户,暂未完成
- /views #页面,主视图
/auth #登录认证
- /ladp #页面,LADP认证
- /mock #页面,默认验证
/common #其他
- /lang #语言包
- /logo #页面,图标
- /status #页面,脚本
/test #登录,跳转
/web_modules #样式
后端lib
/db #数据操作相关文件
/units #核心代码,用于功能实现
- /api #主要的RESTful APIs
- /app #提供主要HTTP服务,处理所有静态资源,包括图片,脚本和样式表
- /auth #授权验证,Mock auth,OAuth 2.0,LDAP,SAML 2.0
- /device #设备功能的具体实现.设备端底包,服务和STFservice.apk的安装
- /log #将设备事件log存储至数据库
- /notify #用于推送通知或到你的环境
- /pooxy #数据库代理相关
- /processer #设备和app之间的桥,几乎所有通讯都经过它
- /provider #设备提供和发收命令
- /reaper #接收心跳,处理设备异常断连
- /storage #截图,图像存储和调整,操作apk
- /triproxy #用于接受和处理来自app和设备端的请求
- /websocket #用于客户端js和服务端(ZeroMQ,Protobuf )的通讯,所有action均由此发送
/util #内部方法
/wire #队列,路由,流相关方法