当前位置:操作系统 > 安卓/Android >>

android socket传输序列化对象

最好只传基本数据类型,基本数据类型不需要序列化

在上一篇socket传输的基础上改即可

添加一个类,继承Serializable;

[java] 
<p>package com;</p><p>import java.io.Serializable;</p><p>public class Message implements Serializable{ 
 String uId;//用户编号 
 //叫分 
  String score; 
 public Message(String uId, String score) { 
  this.uId = uId; 
  this.score = score; 
 } 
  
 public String getuId() { 
  return uId; 
 } 
 public void setuId(String uId) { 
  this.uId = uId; 
 } 
 public String getScore() { 
  return score; 
 } 
 public void setScore(String score) { 
  this.score = score; 
 } 
  

</p> 
主要是改变传送的方式

[java] 
ObjectOutputStream os= null; 
ObjectInputStream in =null; 
这里的片段

[java]
os = new ObjectOutputStream(mSocket.getOutputStream()); 
in = new ObjectInputStream(new BufferedInputStream(mSocket.getInputStream()));   
                         
读取

[java] 
Object obj=null; 
if((obj=in.readObject())!=null) 

    com.Message mes=(com.Message)obj; 
    mStrMSG=mes.getScore()+"\n";//消息换行 
    mHandler.sendMessage(mHandler.obtainMessage());// 发送消息 
     

写入

[java] 
os=new ObjectOutputStream(client.getOutputStream()); 
os.writeObject(new com.Message("user1:",mStrMSG)); 
os.flush(); 

 

不懂的可以先看看socket有关的。

补充:移动开发 , Android ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,