将对象转换为字节数组(通过套接字发送)。然后将其转换回来

时间:2011-08-17 19:09:25

标签: android serialization parcelable

我有以下类定义:

public class Message {
     private String sender, text;

     public Message(String sender, String text) {
         this.sender = sender;
         this.text = text;
     }

}

我希望能够通过蓝牙套接字发送此Message类的实例。为此,需要将其转换为byte []。发送之后,我需要将其转换回Message对象(在套接字的另一端)。我怎样才能做到这一点?

3 个答案:

答案 0 :(得分:2)

两个可能的答案   Serializable与Parcelable

Serializable相对容易实现,但在内存和CPU方面效率不高

http://developer.android.com/reference/java/io/Serializable.html

Parcelable实现起来更复杂,但在内存和CPU方面效率更高

http://developer.android.com/reference/android/os/Parcelable.html

答案 1 :(得分:0)

答案 2 :(得分:0)

您可以定义一个函数,该函数返回byte[]并在每个蓝牙发送之前调用它。字节数组可能类似于{ sendersize, textsize, sender, text }。定义一个函数,它可以恢复进程并在另一侧调用它。