基于STF/ATXServer2 移动设备管理平台的搭建( 三 )

文章插图
整体项目主要包括四部分:
- rethinkdb: 一个开源的轻量级的数据库 , 是用来存储数据的 。rethinkdb官网地址
- atxserver2 :这一部分主要负责处理数据 , 显示与用户的前端交互等等 , 所以单独运行atxserver2也可以看到效果 , 当运行起来以候访问: IP:4000 就可以看到web界面 。
- atxserver2-android-provider: 这一部分是接入安卓设备必须启动的项目 , 主要负责安卓设备和平台的交互工作 , 要想接入安卓设备必须启动此项目 。
- atxserver2-ios-provider: 这一部分是接入IOS设备必须启动的项目 , 主要负责IOS设备和平台的交互工作 , 同样的要想接入IOS设备必须启动此项目 。(注意需要mac电脑)
|-- static 静态目录|-- temlates 前端界面|-- web 网页代码 |-- urls.py 路由整合文件 |-- settings.py 配置文件 |-- database.py 数据库操作相关 |-- utils.py 常用配置 |--views 每个界面的逻辑 |--slave.py 与atxslave通信用 |--devices.py 设备相关路由 |--base.py 基于ReguestHandler的基类还有其他一些文件夹:- scripts文件夹: 主要放着一些用于调试开发的工具类等 , 比如想调试安卓项目可以单独运行fake_android_provider.py 与atxserver2-android-provider , 并且其中的参数要改一些,一般不用太关注这个文件夹 。
- examples文件夹 : 存放着一个自动化的Demo , 采用的自动化框架是uiautomator2 , 设备占用接口参考了openstf的API 。
2.4 环境搭建(这里介绍手动部署方式)(1)安装运行rethinkdb数据库
- rethinkdb下载安装地址 https://rethinkdb.com/docs/install
- 最简单的方式 , 跟STF搭建方法一样 , 拉取docker镜像文件 , 先启动一个rethinkdb数据库 , 可返回上面查看步骤 。
- 先将代码clone到本地
git clone https://github.com/openatx/atxserver2.git- 安装依赖 , 到根目录执行
pip3 install -r requirements.txt(3)启动- 启动atxserver服务 , 进入atx2所在目录并执行
python3 main.py- 设置监听端口
python3 main.py --port 4000 # 默认监听的就是这个地址
文章插图
启动之后 , 局域网浏览器打开:http://宿主机IP地址:4000 , 完成认证之后就可以顺利的看到设备列表页了 。不过目前还是空的 , 什么都没有 。

文章插图
(4)Android设备接入
接下来 , 进行安卓设备接入 。这时需要用到另外一个项目 atxserver2-android-provider 这个项目运行需要Python3.6+和NodeJS(官网强调node必须使用node8);
- 先将代码clone到本地 , 我是clone到了同局域网windows设备上 , 考虑可以连接移动设备 。
git clone https://github.com/openatx/atxserver2-android-provider.git- 安装依赖 , 到atxserver2-android-provider根目录执行
pip3 install -r requirements.txt- 检查移动设备连接
adb devices- 启动Provider服务连接宿主机 , 进入到atxserver2-android-provider根目录执行
python main.py --server 宿主机IP地址:4000 Provider可以通过adb track-devices自动发现已经接入的设备 , 当手机接入到电脑上时 , 会自动给手机安装minicap , minitouch , atx-agent , app-uiautomator-[test].apk , whatsinput-apk 。
推荐阅读
- 如何在基于 Ubuntu 中查看一个软件包的依赖
- 全球首发:鸿蒙开源平台OpenGL
- 基于 Vue3.0+Electron 搭建桌面端应用
- 基于SpringBoot的微服务架构与K8S容器部署实践
- 手把手教你如何用SQL解析复杂JSON
- 基于WSL和VSC在window 10打造完美的终端开发环境
- 满清八旗军 清朝八旗军编制
- 浅谈linux下基于UDP服务的负载均衡方法
- 基于阿里Ant Design构建的高颜值开源管理后台UI框架
- 传统CDN调度 vs 基于HTTP调度
