STF stf 安装及运行

Sorin · 2018年04月08日 · 最后由 YXF 回复于 2020年03月17日 · 4274 次阅读

STF 只支持 MAC 和 LIUNX,当然也是可以在 WIN 上使用的,不过体验很差,当然手机设备可以放在 WIN 电脑上连接

一,安装

STF 的依赖比较多,如下:

Node.js >= 0.12
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
1.首先去 node 官网下 node.js,下 8.11.1 的吧,然后安装一下

2.然后去下载安装下 ADB,https://pan.baidu.com/s/1Jq5PEMEZShH1hn7kZFoytQ 并配置下环境变量

3.在终端中执行如下命令安装其它依赖

brew install rethinkdb graphicsmagick zeromq protobuf yasm pkg-config  

4.然后在终端中执行如下命令安装 STF,当然执行安装过程可能有点长,而且还可能报些错误,遇到报错,按提示解决就行

sudo npm install -g stf 

安装好上面的所有,那下面就可以开始运行了

二,启动

1.在终端上执行命令,启动数据库

rethinkdb 

2.再打开一个新的终端窗口,执行如下命令,IP 为本机电脑 IP,加上参数--allow-remote 可以远程调试手机

stf local --public-ip 192.168.31.15 --allow-remote 

3.在浏览器中输入http://192.168.31.15:7100就可以打开网页,随便输入姓名和一个邮箱,就可以登录
三,连接手机

1.STF 服务上连接手机,只要把打开调试的手机插在电脑上就可以了

2.连接其它电脑上的手机

2.1 首先在被连接电脑上运行命令

ADB 低版本执行

adb -a -P 5037 fork-server server 

ADB 高版本执行

adb nodaemon server -a -P 5037

3.在 STF 服务电脑终端上执行如下命令, - adb host 后跟的是被连接电脑 IP,其它 IP 都为 STF 服务电脑 IP

stf provider --name local --min-port 7400 --max-port 7700 --connect-sub tcp://127.0.0.1:7114 --connect-push tcp://127.0.0.1:7116 --group-timeout 20000 --public-ip 192.168.31.15 --storage-url http://192.168.31.15:7100/ --adb-host 192.168.31.18 --adb-port 5037 --vnc-initial-size 720x1280 --allow-remote  

上面都运行成功了,就可以在网页上看到连接的手机了,还有就是在手机浏览器中也是可以正常使用的

共收到 13 条回复 时间 点赞

绕过一段路,看了 sorccu 大神的 docker 文件:https://hub.docker.com/r/sorccu/adb/
发现以前的分布式弄错了,也看了你的文章,不错,解决了问题
谢谢

此外在 Windows 上部署的问题我分析完原因,在本地解决了,报告给 sorccu 大神,sorccu 大神找到了 Windows 底层问题,解决了 Windows 上部署的问题,可以试试。

乾行 回复

还是不要用 wiindow 吧,最好用 linux 的系统

Sorin 回复

部分手机只能在 windows 上能连上,在 windows 上维护手机更方便

14楼 已删除

那有什么安装包呀,作者都不建议装 win 上的,你可以直接用 npm 直接去装的,要弄很多依赖

13楼 已删除

你理解错了😄

centos7 安装 STF: 你有碰到吗?请问怎么解决的?

gyp WARN EACCES user "root" does not have permission to access the dev dir "/usr/local/node/8.11.2/lib/node_modules/stf/node_modules/dtrace-provider/.node-gyp/8.11.2"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/node/8.11.2/lib/node_modules/stf/node_modules/dtrace-provider/.node-gyp"
乾行 回复

最近也是在 Windows 上用 docker 搭建 STF,请问 Windows 上部署问题怎么解决的?

zhaojian 回复

没有用 docker

stf provider --name local --min-port 7400 --max-port 7700 --connect-sub tcp://127.0.0.1:7114 --connect-push tcp://127.0.0.1:7116 --group-timeout 20000 --public-ip 192.168.31.15 --storage-url http://192.168.31.15:7100/ --adb-host 192.168.31.18 --adb-port 5037 --vnc-initial-size 720x1280 --allow-remote

各位大神 我现在是 window 上面装了一个虚拟机运行的 Ubuntu 系统。现在检测到了设备的存在但是现实的 disconnected,这是什么原因啊。另外这个 --adb-host 192.168.31.18 这个 ip 是怎么来的啊。刚开始学习使用这个,好多都好懵。

谢楼主,连接其他电脑上的手机真是 6

匿名 #14 · 2019年09月18日

执行 adb nodaemon server -a -P 5037 一直提示 offline
另外 stf provider 里 public-ip 和 adb-host 分别对应的 哪个 IP?(主机 or 节点)

在路上 回复

请问您的问题解决了么?怎么解决的?

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册