(首先安装 Macport,因为后面需要用到 port:http://www.ccvita.com/434.html)
linux 的基本包安装,mac 之前有类似环境忽略
SDK 环境安装,这里不做详细说明估计都有
nodejs 安装
安装 bower
安装 rethinkdb
安装 graphicsmagick
安装 libsodium(zeromq 的依赖)
安装 zeromp
安装 protobuf
安装 pkg-config
安装 stf
运行 stf
运行客户端
(声明:本篇文档是我领导总结的,搬过来和大家分享,)
排版问题。另外此方式大量采用 sudo, 会使很多初学者困扰。
这排版。。略牛。。。
这是 mac ?brew install node
装上的 node 不是可以不用 sudo 来安装 npm 包的吗?
是 mac,貌似不用 sudo 会报错
正需要~马上试试!
#1 楼 @lihuazhang 是不是可以搞成 docker
#6 楼 @seveniruby 他本身提供的。
安装的东西好多啊
“注意新建终端 --- 启动 stf,文章中给的例子实际测试无法访问 stf local —allow-remote”
LZ 可能误会这条了哈 ~~~ 这个参数是用来让 STF 允许访问通过 adb connect 命令远程连接的设备,不是远程连接 STF 用的。。。毕竟一般 PC 的 USB 口数量是有限的。
#9 楼 @wang04170 求解答,怎么远程连接 STF 啊
#11 楼 @wang04170 我经常看你的网易博客,能不能加个 QQ 勾搭一下 ,哈哈😄
INF/util:procutil 34132 [] Forking "/Users/allanwendy/node_modules/stf/lib/cli.js migrate"
INF/db 34133 [] Connecting to 127.0.0.1:28015
undefined:1
ERROR: Received an unsupported protocol version. This port is for RethinkDB qu
^
SyntaxError: Unexpected token E
at Object.parse (native)
at Socket.handshake_callback (/Users/allanwendy/node_modules/stf/node_modules/rethinkdb/net.js:624:35)
at Socket.emit (events.js:107:17)
at readableAddChunk (_stream_readable.js:163:16)
at Socket.Readable.push (_stream_readable.js:126:10)
at TCP.onread (net.js:538:20)
/Users/allanwendy/node_modules/bluebird/js/main/promise.js:677
throw e;
^
ExitError: Exit code "1"
at ChildProcess. (/Users/allanwendy/node_modules/stf/lib/util/procutil.js:49:23)
at ChildProcess.emit (events.js:110:17)
at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
如上的问题,咋解决啊,各位
@wang04170 如上的问题,咋解决啊,帮忙看看,加不上你
#13 楼 @allanwendy rethinkdb 没启动。
@allanwendy 请问上面的问题是怎样解决的 ?
@allanwendy 你好,初学 STF,请问怎么换版本呢,重新安装还是同样的错误,我看我的 stf 是 1.2 的
楼主好,我搭建好了环境,单台调试也正常。现在想尝试同时操作多台设备。在官网没有找到对应的资料,请问你有什么方案吗?
为啥不用 docker。。
为什么我最多只能 37 台,是 STF 限制,还是 ADB,有人知道吗
clydeiMac:~ cly$ stf doctor
/usr/local/lib/node_modules/stf/node_modules/bindings/bindings.js:91
throw err
^
Error: Could not locate the bindings file. Tried:
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/Debug/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/Release/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/out/Debug/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/Debug/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/out/Release/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/Release/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/default/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/compiled/6.10.1/darwin/x64/zmq.node
at bindings (/usr/local/lib/node_modules/stf/node_modules/bindings/bindings.js:88:9)
at Object. (/usr/local/lib/node_modules/stf/node_modules/zmq/lib/index.js:6:30)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object. (/usr/local/lib/node_modules/stf/node_modules/zmq/index.js:2:18)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
我现在报这个错误,不知道为什么。
我重装 node-gyp 也不行。
https://testerhome.com/topics/2988 里的 chestnut 也碰到过这个问题,不知道他解决了没有。
clydeiMac:~ cly$ stf local --public-ip 192.168.28.2 --allow-remote
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js migrate"
INF/db 10271 [] Connecting to 127.0.0.1:28015
INF/db:setup 10271 [] Database "stf" already exists
INF/db:setup 10271 [] Table "users" already exists
INF/db:setup 10271 [] Table "accessTokens" already exists
INF/db:setup 10271 [] Table "vncauth" already exists
INF/db:setup 10271 [] Table "devices" already exists
INF/db:setup 10271 [] Table "logs" already exists
INF/db:setup 10271 [] Index "users"."adbKeys" already exists
INF/db:setup 10271 [] Index "accessTokens"."email" already exists
INF/db:setup 10271 [] Index "vncauth"."response" already exists
INF/db:setup 10271 [] Index "vncauth"."responsePerDevice" already exists
INF/db:setup 10271 [] Index "devices"."owner" already exists
INF/db:setup 10271 [] Index "devices"."present" already exists
INF/db:setup 10271 [] Waiting for index "users"."adbKeys"
INF/db:setup 10271 [] Waiting for index "accessTokens"."email"
INF/db:setup 10271 [] Waiting for index "vncauth"."response"
INF/db:setup 10271 [] Waiting for index "vncauth"."responsePerDevice"
INF/db:setup 10271 [] Waiting for index "devices"."owner"
INF/db:setup 10271 [] Waiting for index "devices"."present"
INF/db:setup 10271 [] Index "devices"."providerChannel" already exists
INF/db:setup 10271 [] Waiting for index "devices"."providerChannel"
INF/db:setup 10271 [] Index "users"."adbKeys" is ready
INF/db:setup 10271 [] Index "accessTokens"."email" is ready
INF/db:setup 10271 [] Index "vncauth"."responsePerDevice" is ready
INF/db:setup 10271 [] Index "vncauth"."response" is ready
INF/db:setup 10271 [] Index "devices"."providerChannel" is ready
INF/db:setup 10271 [] Index "devices"."present" is ready
INF/db:setup 10271 [] Index "devices"."owner" is ready
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js triproxy app001 --bind-pub tcp://127.0.0.1:7111 --bind-dealer tcp://127.0.0.1:7112 --bind-pull tcp://127.0.0.1:7113"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js triproxy dev001 --bind-pub tcp://127.0.0.1:7114 --bind-dealer tcp://127.0.0.1:7115 --bind-pull tcp://127.0.0.1:7116"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js processor proc001 --connect-app-dealer tcp://127.0.0.1:7112 --connect-dev-dealer tcp://127.0.0.1:7115"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js processor proc002 --connect-app-dealer tcp://127.0.0.1:7112 --connect-dev-dealer tcp://127.0.0.1:7115"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js reaper reaper001 --connect-push tcp://127.0.0.1:7116 --connect-sub tcp://127.0.0.1:7111"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js provider --name clydeiMac.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 192.168.28.2 --storage-url http://localhost:7100/ --adb-host 127.0.0.1 --adb-port 5037 --vnc-initial-size 600x800 --allow-remote"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js auth-mock --port 7120 --secret kute kittykat --app-url http://192.168.28.2:7100/"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js app --port 7105 --secret kute kittykat --auth-url http://192.168.28.2:7100/auth/mock/ --websocket-url http://192.168.28.2:7110/"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js api --port 7106 --secret kute kittykat --connect-push tcp://127.0.0.1:7113 --connect-sub tcp://127.0.0.1:7111"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js websocket --port 7110 --secret kute kittykat --storage-url http://localhost:7100/ --connect-sub tcp://127.0.0.1:7111 --connect-push tcp://127.0.0.1:7113"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js storage-temp --port 7102"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js storage-plugin-image --port 7103 --storage-url http://localhost:7100/"
INF/util:procutil 10270 [] Forking "/usr/local/lib/node_modules/stf/lib/cli.js storage-plugin-apk --port 7104 --storage-url http://localhost:7100/"
INF/util:procutil 10270 [*] Forking "/usr/local/lib/node_modules/stf/lib/cli.js poorxy --port 7100 --app-url http://localhost:7105/ --auth-url http://localhost:7120/ --api-url http://localhost:7106/ --websocket-url http://localhost:7110/ --storage-url http://localhost:7102/ --storage-plugin-image-url http://localhost:7103/ --storage-plugin-apk-url http://localhost:7104/"
/usr/local/lib/node_modules/stf/node_modules/bindings/bindings.js:91
throw err
^
Error: Could not locate the bindings file. Tried:
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/Debug/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/Release/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/out/Debug/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/Debug/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/out/Release/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/Release/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/default/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/compiled/6.10.1/darwin/x64/zmq.node
at bindings (/usr/local/lib/node_modules/stf/node_modules/bindings/bindings.js:88:9)
at Object. (/usr/local/lib/node_modules/stf/node_modules/zmq/lib/index.js:6:30)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object. (/usr/local/lib/node_modules/stf/node_modules/zmq/index.js:2:18)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
FTL/cli:local 10270 [] Child process had an error ExitError: Exit code "1"
at ChildProcess. (/usr/local/lib/node_modules/stf/lib/util/procutil.js:49:23)
at emitTwo (events.js:106:13)
at ChildProcess.emit (events.js:191:7)
at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
INF/cli:local 10270 [] Shutting down all child processes
/usr/local/lib/node_modules/stf/node_modules/bindings/bindings.js:91
throw err
^
Error: Could not locate the bindings file. Tried:
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/Debug/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/Release/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/out/Debug/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/Debug/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/out/Release/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/Release/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/build/default/zmq.node
→ /usr/local/lib/node_modules/stf/node_modules/zmq/compiled/6.10.1/darwin/x64/zmq.node
at bindings (/usr/local/lib/node_modules/stf/node_modules/bindings/bindings.js:88:9)
at Object. (/usr/local/lib/node_modules/stf/node_modules/zmq/lib/index.js:6:30)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object. (/usr/local/lib/node_modules/stf/node_modules/zmq/index.js:2:18)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
这贴害人不浅啊,mac 环境都搞坏了。墙裂建议新手还是去官网
用了 sudu 就所有命令都用 不然要坑
建议去官网,被这帖子坑了。各种问题