Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 16|回复: 6
打印 上一主题 下一主题

调试nodejs-android-websocket

[复制链接]

1198

主题

2060

帖子

7058

积分

超级版主

Rank: 8Rank: 8

积分
7058
跳转到指定楼层
楼主
发表于 2016-8-15 17:08:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1,首先导入eclipse运行的时候,如果直接更新库会编译失败。
2,导入android studio的,也会有很多错误。
使用windows下面的idt版本的eclipse,不做任何升级,目前是ok的。

回复

使用道具 举报

1198

主题

2060

帖子

7058

积分

超级版主

Rank: 8Rank: 8

积分
7058
沙发
 楼主| 发表于 2016-8-16 10:12:03 | 只看该作者
本帖最后由 zangcf 于 2016-8-16 10:24 编辑

使用原来的程序,加入debug code,保证网络和debug code正常工作。
1,重新从服务器上下载一份代码
2,保证手机可以连接网络3,启动ws_server
  1. ultranix@ultranix-HP-EliteBook-8760w:~$ ssh root@120.76.203.222
  2. root@120.76.203.222's password:
  3. Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-86-generic x86_64)

  4. * Documentation:  https://help.ubuntu.com/
  5. New release '16.04.1 LTS' available.
  6. Run 'do-release-upgrade' to upgrade to it.


  7. Welcome to aliyun Elastic Compute Service!

  8. root@iZ949sqo4m3Z:~# ls
  9. nodejs-android-websocket  nodejs-android-websocket.tar.gz  tmp
  10. root@iZ949sqo4m3Z:~# cd nodejs-android-websocket/
  11. root@iZ949sqo4m3Z:~/nodejs-android-websocket# ls
  12. README.md  android-client  web  ws-server
  13. root@iZ949sqo4m3Z:~/nodejs-android-websocket# cd ws-server/
  14. root@iZ949sqo4m3Z:~/nodejs-android-websocket/ws-server# ls
  15. README.md  node_modules  package.json  server.js
  16. root@iZ949sqo4m3Z:~/nodejs-android-websocket/ws-server# node server.js
复制代码
4,启动网络监视段
  1. ultranix@ultranix-HP-EliteBook-8760w:~$ ssh root@120.76.203.222
  2. root@120.76.203.222's password:
  3. Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-86-generic x86_64)

  4. * Documentation:  https://help.ubuntu.com/
  5. New release '16.04.1 LTS' available.
  6. Run 'do-release-upgrade' to upgrade to it.


  7. Welcome to aliyun Elastic Compute Service!

  8. root@iZ949sqo4m3Z:~# cd nodejs-android-websocket/web/
  9. root@iZ949sqo4m3Z:~/nodejs-android-websocket/web# node server.js
  10. Web server listening on port 3005
复制代码



回复 支持 反对

使用道具 举报

1198

主题

2060

帖子

7058

积分

超级版主

Rank: 8Rank: 8

积分
7058
板凳
 楼主| 发表于 2016-8-16 10:44:49 | 只看该作者
本帖最后由 zangcf 于 2016-8-16 10:52 编辑

添加代码
  1. @Override
  2.         public boolean onTouchEvent(MotionEvent event){
  3.                 Log.d(TAG,"in the onTouchEvent(MotionEvent event)!");
  4.         //Log.d(TAG,"the eventX is "+eventX+"the eventY is "+eventY+"the eventZ is "+eventZ);
  5.                 return true;
  6.         }
复制代码
试试滑动屏幕,是否有logcat信息出来。
================
好像没有打码!!!
换了另外一台手机,可以正常打码了!
  1. 08-16 10:51:18.282: D/zcfdebug(18142): in the onTouchEvent(MotionEvent event)!
复制代码


回复 支持 反对

使用道具 举报

1198

主题

2060

帖子

7058

积分

超级版主

Rank: 8Rank: 8

积分
7058
地板
 楼主| 发表于 2016-8-16 11:01:21 | 只看该作者
取出xyz的值,除以两千,然后看看能否发送到网络端!
  1. @Override
  2.         public boolean onTouchEvent(MotionEvent event){
  3.                 Log.d("zcfdebug","in the onTouchEvent(MotionEvent event)!");
  4.         //Log.d(TAG,"the eventX is "+eventX+"the eventY is "+eventY+"the eventZ is "+eventZ);
  5.                 TextView axisXtextbox = (TextView)this.findViewById(R.id.axis_x);
  6.                 TextView axisYtextbox = (TextView)this.findViewById(R.id.axis_y);
  7.                 TextView axisZtextbox = (TextView)this.findViewById(R.id.axis_z);
  8.                 TextView console = (TextView)this.findViewById(R.id.console);
  9.                
  10.                 float eventX = event.getX();  
  11.         float eventY = event.getY();  
  12.         float eventZ = event.getPressure();

  13.                 float axisX = eventX/2000;
  14.             float axisY = eventY/2000;
  15.             float axisZ = eventZ/2000;

  16.             axisXtextbox.setText(String.valueOf(axisX));
  17.             axisYtextbox.setText(String.valueOf(axisY));
  18.             axisZtextbox.setText(String.valueOf(axisZ));
  19.         
  20.         
  21.                 try {
  22.                         this.mConnection.sendTextMessage(String.format("{ \"axis_x\": \"%f\", \"axis_y\": \"%f\", \"axis_z\": \"%f\" }", axisX, axisY, axisZ));
  23.                 }
  24.                 catch (Exception err) {
  25.                         StringWriter sw = new StringWriter();
  26.                         PrintWriter pw = new PrintWriter(sw);
  27.                         err.printStackTrace(pw);
  28.                         console.setText("SendMessage Ex: "  + ", " + err.getClass().toString() + ", " + sw.toString());
  29.                 }
  30.                
  31.             
  32.         
  33.                 return true;
  34.         }
复制代码
这样修改之后,可以正常发送数据了。


回复 支持 反对

使用道具 举报

1198

主题

2060

帖子

7058

积分

超级版主

Rank: 8Rank: 8

积分
7058
5#
 楼主| 发表于 2016-8-16 11:02:32 | 只看该作者
本帖最后由 zangcf 于 2016-8-16 11:07 编辑

下一步,研究服务器端如果接受数据,如何大于一,将会怎么处理呢?============
这个server好像非常简单,就是接受数据,然后转发出来!
回复 支持 反对

使用道具 举报

1198

主题

2060

帖子

7058

积分

超级版主

Rank: 8Rank: 8

积分
7058
6#
 楼主| 发表于 2016-8-16 11:08:32 | 只看该作者
本帖最后由 zangcf 于 2016-8-16 11:18 编辑

下面就看看监视端的前端如何处理了。分析程序web这里主要使用了一个SmoothieChart,来处理消息进度的问题。
但是,很多的程序细节还是没有看的特别明白。
回复 支持 反对

使用道具 举报

1198

主题

2060

帖子

7058

积分

超级版主

Rank: 8Rank: 8

积分
7058
7#
 楼主| 发表于 2016-8-16 18:13:34 | 只看该作者

接收数据部分搞定了

  1. ws.onmessage = function (evt)
  2.                {
  3.                   var data = JSON.parse(JSON.parse(evt.data).utf8Data);
  4.                   //series.append(new Date().getTime(), parseFloat(data.axis_x.replace(',', '.')));
  5.                                   var axis_x = parseFloat(data.axis_x.replace(',', '.'));
  6.                                   var axis_y = parseFloat(data.axis_y.replace(',', '.'));

  7.                   messageCount++;
  8.                   document.getElementById('connectionStatus').className = 'connected';
  9.                   document.getElementById('connectionStatus').innerHTML = messageCount + ' messages received';
  10.                };
复制代码
上面就是接收数据了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Comsenz Inc.

GMT+8, 2025-12-14 18:50 , Processed in 0.012356 second(s), 8 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表