Discuz! Board
标题:
调试nodejs-android-websocket
[打印本页]
作者:
zangcf
时间:
2016-8-15 17:08
标题:
调试nodejs-android-websocket
1,首先导入eclipse运行的时候,如果直接更新库会编译失败。
2,导入android studio的,也会有很多错误。
使用windows下面的idt版本的eclipse,不做任何升级,目前是ok的。
作者:
zangcf
时间:
2016-8-16 10:12
本帖最后由 zangcf 于 2016-8-16 10:24 编辑
使用原来的程序,加入debug code,保证网络和debug code正常工作。
1,重新从服务器上下载一份代码
2,保证手机可以连接网络3,启动ws_server
ultranix@ultranix-HP-EliteBook-8760w:~$ ssh root@120.76.203.222
root@120.76.203.222's password:
Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-86-generic x86_64)
* Documentation: https://help.ubuntu.com/
New release '16.04.1 LTS' available.
Run 'do-release-upgrade' to upgrade to it.
Welcome to aliyun Elastic Compute Service!
root@iZ949sqo4m3Z:~# ls
nodejs-android-websocket nodejs-android-websocket.tar.gz tmp
root@iZ949sqo4m3Z:~# cd nodejs-android-websocket/
root@iZ949sqo4m3Z:~/nodejs-android-websocket# ls
README.md android-client web ws-server
root@iZ949sqo4m3Z:~/nodejs-android-websocket# cd ws-server/
root@iZ949sqo4m3Z:~/nodejs-android-websocket/ws-server# ls
README.md node_modules package.json server.js
root@iZ949sqo4m3Z:~/nodejs-android-websocket/ws-server# node server.js
复制代码
4,启动网络监视段
ultranix@ultranix-HP-EliteBook-8760w:~$ ssh root@120.76.203.222
root@120.76.203.222's password:
Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-86-generic x86_64)
* Documentation: https://help.ubuntu.com/
New release '16.04.1 LTS' available.
Run 'do-release-upgrade' to upgrade to it.
Welcome to aliyun Elastic Compute Service!
root@iZ949sqo4m3Z:~# cd nodejs-android-websocket/web/
root@iZ949sqo4m3Z:~/nodejs-android-websocket/web# node server.js
Web server listening on port 3005
复制代码
作者:
zangcf
时间:
2016-8-16 10:44
本帖最后由 zangcf 于 2016-8-16 10:52 编辑
添加代码
@Override
public boolean onTouchEvent(MotionEvent event){
Log.d(TAG,"in the onTouchEvent(MotionEvent event)!");
//Log.d(TAG,"the eventX is "+eventX+"the eventY is "+eventY+"the eventZ is "+eventZ);
return true;
}
复制代码
试试滑动屏幕,是否有logcat信息出来。
================
好像没有打码!!!
换了另外一台手机,可以正常打码了!
08-16 10:51:18.282: D/zcfdebug(18142): in the onTouchEvent(MotionEvent event)!
复制代码
作者:
zangcf
时间:
2016-8-16 11:01
取出xyz的值,除以两千,然后看看能否发送到网络端!
@Override
public boolean onTouchEvent(MotionEvent event){
Log.d("zcfdebug","in the onTouchEvent(MotionEvent event)!");
//Log.d(TAG,"the eventX is "+eventX+"the eventY is "+eventY+"the eventZ is "+eventZ);
TextView axisXtextbox = (TextView)this.findViewById(R.id.axis_x);
TextView axisYtextbox = (TextView)this.findViewById(R.id.axis_y);
TextView axisZtextbox = (TextView)this.findViewById(R.id.axis_z);
TextView console = (TextView)this.findViewById(R.id.console);
float eventX = event.getX();
float eventY = event.getY();
float eventZ = event.getPressure();
float axisX = eventX/2000;
float axisY = eventY/2000;
float axisZ = eventZ/2000;
axisXtextbox.setText(String.valueOf(axisX));
axisYtextbox.setText(String.valueOf(axisY));
axisZtextbox.setText(String.valueOf(axisZ));
try {
this.mConnection.sendTextMessage(String.format("{ \"axis_x\": \"%f\", \"axis_y\": \"%f\", \"axis_z\": \"%f\" }", axisX, axisY, axisZ));
}
catch (Exception err) {
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
err.printStackTrace(pw);
console.setText("SendMessage Ex: " + ", " + err.getClass().toString() + ", " + sw.toString());
}
return true;
}
复制代码
这样修改之后,可以正常发送数据了。
作者:
zangcf
时间:
2016-8-16 11:02
本帖最后由 zangcf 于 2016-8-16 11:07 编辑
下一步,研究服务器端如果接受数据,如何大于一,将会怎么处理呢?============
这个server好像非常简单,就是接受数据,然后转发出来!
作者:
zangcf
时间:
2016-8-16 11:08
本帖最后由 zangcf 于 2016-8-16 11:18 编辑
下面就看看监视端的前端如何处理了。分析程序web这里主要使用了一个SmoothieChart,来处理消息进度的问题。
但是,很多的程序细节还是没有看的特别明白。
作者:
zangcf
时间:
2016-8-16 18:13
标题:
接收数据部分搞定了
ws.onmessage = function (evt)
{
var data = JSON.parse(JSON.parse(evt.data).utf8Data);
//series.append(new Date().getTime(), parseFloat(data.axis_x.replace(',', '.')));
var axis_x = parseFloat(data.axis_x.replace(',', '.'));
var axis_y = parseFloat(data.axis_y.replace(',', '.'));
messageCount++;
document.getElementById('connectionStatus').className = 'connected';
document.getElementById('connectionStatus').innerHTML = messageCount + ' messages received';
};
复制代码
上面就是接收数据了。
欢迎光临 Discuz! Board (http://47.89.242.157:9000/bbs/discuz/)
Powered by Discuz! X3.2