这几天都是在弄服务器和客户端之间的数据通信,一个bug也是弄了好久的时间。

    教训就是:在服务器端,与客户端通信的接口对象要保持一致,所建立的连接要一致。如与同一个User建立的连接需通过同一个对象处理。若不同则可能造成提示当前建立的连接中断,引发空指针错误错误。

    同时,在Handler的使用上,使用obtainMessage后的message,再利用handler.sendMessage将信息发送出去。handler的定义中复写handleMessage方法,并对收到的message进行分类处理。这套方法尽管没有用到官方推荐使用的WeakReference,但经过实测效果不错。可用来做线程之间的交互。若出现失败的情况可在将主要的执行语句包裹在Looper.prepare()和Looper.loop()两个方法之中。Handler的机制也是安卓内部用来进行消息转发与传递的主要机制,还有待深究