先声明一下:最近在做android的开发! 因为要与服务器通信,服务器使用的mina框架,为了保持一致,方便性,在构建客户端网络层的时候,也使用了mina框架!
写一些对与mina框架对于android端的一些认识,欢迎广大童鞋拍砖!
先写遇到的问题吧!那个是相当的郁闷!
最开始的时候,先拿连接服务器端的demo在自己机器构建一般的工程跑(还没在android里面跑),跑的很顺利,很欢畅!可以一把demo移值到android里面,就开始在客户端报错!信息可以正常的发送给服务器,服务器也返回了信息,可客户端收到的信息是一堆乱码:错误信息如下
09-02 07:08:50.488: INFO/System.out(1036): 发生异常:java.nio.charset.MalformedInputException: Length: 1 (Hexdump: 00 00 00 4F 30 31 30 31 26 30 30 30 30 30 31 26 30 30 30 30 30 30 30 30 30 30 30 30 30 30 31 26 30 30 30 40 B2 E2 CA D4 D3 C3 BB A7 31 26 B8 DF CB D9 BD BB BE AF D6 A7 B6 D3 26 B8 DF CB D9 BD BB BE AF D6 A7 B6 D3 B6 FE B4 F3 B6 D3 26 31 2E 30 2E 31)
开始还以为是字符串编码问题! 开始跟服务器端商量编码问题! 调试了若干次,从GB2312到UTF-8;从发送到接受,都没有用!服务器发过来在客户端解析是一堆二进制数字,真是坑爹的呀!还想着要不去解析这些二进制编码吧! 后来想想这不是扯淡的,那么多业务都这么干不累死了!于是开始努力学习mina框架,各种求救!百度-谷歌! 在CSDN下载频道里面发现有DEMO 下载下来 才TMD坑爹的,跟android没有一点关系! 后来在一边学习,一边找的过程中,发现了 珍惜所有 这位好人呀!他说android端可以使用mina框架,到这里才安心下来,只要别人可以用,俺也可以用的! 他给出的上面问题的解释是:盗用下,jdk版本引起的异常 ,这个不好解决 即便把服务器换成jdk1.5也不一样正常,因为android中jdk做过改动!先这么解析着吧,要是有什么高人明白这里是为什么的,求解答!
好吧下面上代码,说说android里面使用mina框架的传对象!
客户端代码:4个类
User类
import java.io.Serializable;
/***
* @version 1.0
* @author why
* @time 2011-8-2
* 用户类
*/
public class User implements Serializa