在利用java socket实现Android客户端与服务端(笔记本)实现传递object对象时,需要用到ObjectInputStream以及ObjectOutputStream,当然传递的对象需要序列化,这是最重要的。
参考博文:Java Socket实战之三 传输对象
在调试过程中,在使用ObjectInputStream的readObject方法出现了java.lang.ClassNotFoundException,为什么会出现该异常??
原来是自己将Android客户端程序与服务端程序中的序列化对象放到不同的package中,包名称不一致所致。调试错误也提醒在那个包下没有找到该类。
Android端工程架构 Server端工程架构
将Android客户端程序与服务端程序中的序列化对象的package name修改为一致后,异常解决。
效果如下所示: