一、背景
看到之前曾有人发贴,贴名【stf 连接各操作系统上安卓设备的操作方法分享】,介绍了一下,虽然说方法和理论都有,但下述评论中还是有很多人不知如何操作,特别是不知道 stf provider 命令如何使用,特此,提供具体的解决方法,当然本人注重结果导向,所以下述方法中,重点都是通过截图方法来展开,不涉及理论上的过多解释。
二、目的
将没有安装 stf 组件电脑上连接的 android 设备,添加映射到装有 stf 平台服务的机器上(可以看作 Master-Slave 主从关系)
三、环境前置
Mac 服务器,安装 stf 完整组件,作为 master 节点。[IP:172.17.9.49]
Windows,未安装 stf,支持 android sdk 。[IP:172.17.9.20]
Liunx,未安装 stf,支持 android sdk。[IP:10.16.6.63]
三台电脑网络互通。
四、环境描述
下述截图仅供演示说明,其中,IP 及端口划分因实际情况而定
Mac STF 服务本机上连有的 android 设备:
Windows 机器上连有的 android 设备:
Linux 机器上连有的 android 设备(通过 wifi 模式连接):
五、实际操作
windows 上启动 adb server 并对外暴露 5037 端口
adb -a -P 5037 fork-server server
Linux 上启动 adb server 并对外暴露 5037 端口
adb -a -P 5037 fork-server server
在 Mac 上启动 stf 服务
stf local --public-ip 172.17.9.49 --allow-remote
如果不知道 triproxy dev 具体的端口配置情况或者不知道 stf provider 命令如何写的同学,可以通过分析日志得出,如下红框标红的区域:
通过配置 adb host 的方式连上 windows 主机上的设备
在 Mac 服务器上,执行下述命令【其中 127.0.0.1 可换成实际 IP172.17.9.49】:
stf provider --name mikezhoudeMac-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 20000 --public-ip 172.17.9.49 --storage-url http://localhost:7100/ --adb-host 172.17.9.20 --adb-port 5037 --vnc-initial-size 600x800 --allow-remote
Windows 连接启动成功后的日志,如下所示:
通过配置 adb host 的方式连上 liunx 主机上的设备
stf provider --name mikezhoudeMac-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 20000 --public-ip 172.17.9.49 --storage-url http://localhost:7100/ --adb-host 10.16.6.63 --adb-port 5037 --vnc-initial-size 600x800 --allow-remote
Liunx 连接启动成功后的日志,如下所示:
连接成功后,Mac 服务上接收到的日志
下述日志,说明 windows 上的安卓设备已经连接成功:
下述日志,说明 liunx 上的安卓设备已经连接成功:
六、Mac 平台连接效果展示
七、补充说明
上述操作行为,仅针对其它操作系统上没有安装 stf,所以采用 adb host 的方式连上 对应操作系统上的安卓设备,假如某此系统服务上已安装 stf 相应组件,
如:10.16.6.63_Liunx 主机,安装了 stf,想将 Liunx 主机的安卓设备连接到主 Master(MAC:172.17.9.49)平台上。
通过配置新的 provider 连上 Liunx 主机上的设备:
在 Liunx 主机上启动 stf provider【差异在于,不需要增加--adb-host】
stf provider --name mikezhoudeMac-mini.local --min-port 7400 --max-port 7700 --connect-sub tcp://172.17.9.49:7114 --connect-push tcp://172.17.9.49:7116 --group-timeout 20000 --public-ip 172.17.9.49 --storage-url http://172.17.9.49:7100/ --vnc-initial-size 600x800 --allow-remote
八、结束语
我只想说,NND,为啥这次感冒这么久没好!