MAC 下SFT环境搭建及使用

Posted on 2019-08-11 21:06  GSY921  阅读(550)  评论(0编辑  收藏  举报

安装过程(开源官方:https://github.com/openstf/stf)

基本工具准备brew,nvm

1.安装依赖库(jdk8官网下载直接安装即可)

brew install graphicsmagick zeromq protobuf yasm pkg-config cmake rethinkdb

安装成功检查(不报错即可):rethinkdb -v,yasm,java -version

2.安装Node.js

选择8.x版本安装即可(我用的8.16.2)

node.js版本安装错了,可以删除:sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*}

https://npm.taobao.org/mirrors/node/latest-v8.x/
安装成功检查:node -v,npm -v

3.安装adb及xcode-select

brew install android-platform-tools
xcode-select install

安装成功检查:adb version,xcode-select -v

4.安装cnpm

配置淘宝镜像:npm config set registry https://registry.npm.taobao.org

配置完镜像之后验证是否成功:npm config get registry

安装cnpm:sudo npm install -g cnpm --registry=https://registry.npm.taobao.org --verbose

5.安装stf

sudo cnpm install -g stf

stf doctor检查依赖是否正确(实际有报错也没影响)

6.启动服务

启动rethinkdb:
rethinkdb --bind all --cache-size 8192 --http-port 8090

--cache-size指定缓存大小
--http-port 指定端口
启动stf:
stf local --public-ip <本机的IP地址>

输入http://localhost:7100即可访问

 


 

记录下正常的使用过程,主机-服务器是MAC机,从机-Windows机子

1.STF服务启动(挂后台的服务,启动后输入 exit退出进程即可)

后台启动DB:nohup rethinkdb &

挂后台启动: nohup stf local --public-ip xx.xx.xx.xx & 

2.从其它slave从机-电脑上接入设备(我的是以windows为主)

2.1所有需要接入设备的从机(这里是Windows电脑)安装配置好android sdk环境,命令行执行 adb nodaemon server -a -P 5037 开启监听服务

(若此服务无法启动 可先adb kill-server),输入adb devices可显示出连接的设备即可

2.2从机-windows端连接设备,并打开开发者模式,开启USB调试,允许通过USB安装app(且默认允许安装第三方app),后边接入平台时 会自动安装SFT服务 否则会导致安装失败,无法接入设备

2.3注册windows电脑到Mac服务器(此过程是建立通信连接,并在设备上安装STF服务插件,所以要在2.2步骤中开启对应的app安装授权)

MAC服务器端执行命令:

stf provider --name GSYMac-mini.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 900 --public-ip 10.44.3.101 --storage-url http://localhost:7100/ --adb-host 10.43.0.222 --adb-port 5037 --vnc-initial-size 600x800

绿色的IP地址为MAC服务端的(主机),红色的IP地址为Windows端的(从机),其它保持默认不变(除非你从机启动时指定了端口)。

此步顺利的话,会弹出安装 STF插件的授权弹出框,同意安装即可。

此步没问题了,可以按Ctrl+C结束进程,在上边那一长串命令的首尾加上nohup……& 把进程挂后台,启动成功后,输入exit退出即可。

 

至此,多平台设备接入完成。