# Message

public class Message

消息实体，用来容纳和存储客户端收到的消息信息，对应聊天界面中的消息。

#### Author

rongcloud

## Constructors

Message
Link copied to clipboard
public void Message()
默认构造函数。
public void Message(Parcel in)

## Types

MessageDirection
Link copied to clipboard
public enum MessageDirection
消息方向枚举。
ReceivedStatus
Link copied to clipboard
public class ReceivedStatus
接收到的消息的状态。 是一个按位标记的枚举，可以进行位运算。
SentStatus
Link copied to clipboard
public enum SentStatus
发送出的消息的状态。

## Properties

channelId
Link copied to clipboard
public String channelId
content
Link copied to clipboard
public MessageContent content
conversationType
Link copied to clipboard
public ConversationType conversationType
CREATOR
Link copied to clipboard
public final static Creator<Message> CREATOR
directedUserIds
Link copied to clipboard
public List<String> directedUserIds
expansion
Link copied to clipboard
public Map<String, String> expansion
extra
Link copied to clipboard
public String extra
isEmptyContent
Link copied to clipboard
public boolean isEmptyContent
用来标识这条消息 content 是否为空，如果为空，需要从服务端拉取消息。
isOffline
Link copied to clipboard
public boolean isOffline
messageConfig
Link copied to clipboard
public MessageConfig messageConfig
messageDirection
Link copied to clipboard
public Message.MessageDirection messageDirection
messageId
Link copied to clipboard
public int messageId
messagePushConfig
Link copied to clipboard
public MessagePushConfig messagePushConfig
objectName
Link copied to clipboard
public String objectName
readReceiptInfo
Link copied to clipboard
public ReadReceiptInfo readReceiptInfo
readReceiptInfoV4
Link copied to clipboard
public ReadReceiptInfoV4 readReceiptInfoV4
v2和v4 公用
readTime
Link copied to clipboard
public long readTime
receivedStatus
Link copied to clipboard
public Message.ReceivedStatus receivedStatus
receivedTime
Link copied to clipboard
public long receivedTime
senderUserId
Link copied to clipboard
public String senderUserId
sentStatus
Link copied to clipboard
public Message.SentStatus sentStatus
sentTime
Link copied to clipboard
public long sentTime
targetId
Link copied to clipboard
public String targetId

## Functions

describeContents
Link copied to clipboard
public int describeContents()
equals
Link copied to clipboard
public boolean equals(Object o)
getChannelId
Link copied to clipboard
public String getChannelId()
获取频道 id
getContent
Link copied to clipboard
public MessageContent getContent()
获取消息内容。
getConversationType
Link copied to clipboard
public ConversationType getConversationType()
获取会话类型。
getDirectedUserIds
Link copied to clipboard
public List<String> getDirectedUserIds()
获取定向用户列表 单聊会话类型返回空
getExpansion
Link copied to clipboard
public Map<String, String> getExpansion()
消息扩展信息列表
getExtra
Link copied to clipboard
public String getExtra()
获取消息的附加信息。
getGroupReadReceiptInfoV2
Link copied to clipboard
public GroupReadReceiptInfoV2 getGroupReadReceiptInfoV2()
获取已读回执 V2 信息
getMessageConfig
Link copied to clipboard
public MessageConfig getMessageConfig()
获取消息配置
getMessageDirection
Link copied to clipboard
public Message.MessageDirection getMessageDirection()
获取消息方向。
getMessageId
Link copied to clipboard
public int getMessageId()
获取本地存储的消息的唯一值（数据库索引唯一值）。
getMessagePushConfig
Link copied to clipboard
public MessagePushConfig getMessagePushConfig()
获取推送配置
getObjectName
Link copied to clipboard
public String getObjectName()
获取消息对象名称。 消息对象名称即 io.rong.imlib.
getReadReceiptInfo
Link copied to clipboard
public ReadReceiptInfo getReadReceiptInfo()
获取已读回执状态
getReadReceiptInfoV4
Link copied to clipboard
public ReadReceiptInfoV4 getReadReceiptInfoV4()
获取已读回执 V4 信息
getReadTime
Link copied to clipboard
public long getReadTime()
getReceivedStatus
Link copied to clipboard
public Message.ReceivedStatus getReceivedStatus()
获取消息的接收状态。
getReceivedTime
Link copied to clipboard
public long getReceivedTime()
获取消息接收时间（Unix 时间戳、毫秒）。 接收时间为消息到达接收客户端时客户端的本地时间。
getSenderUserId
Link copied to clipboard
public String getSenderUserId()
获取发送消息的用户 id。
getSentStatus
Link copied to clipboard
public Message.SentStatus getSentStatus()
获取消息的发送状态。
getSentTime
Link copied to clipboard
public long getSentTime()
获取消息发送时间（Unix 时间戳、毫秒）。 发送时间为消息从发送客户端到达服务器时的服务器时间。
getTargetId
Link copied to clipboard
public String getTargetId()
获取目标 id。 根据不同的 conversationType，可能是用户 id、讨论组 id、群组 id 或聊天室 id。
getUId
Link copied to clipboard
public String getUId()
获取服务器消息唯一 id（在同一个 AppKey 下全局唯一）
hashCode
Link copied to clipboard
public int hashCode()
isCanIncludeExpansion
Link copied to clipboard
public boolean isCanIncludeExpansion()
消息是否可以包含扩展信息 该属性在消息发送时确定，发送之后不能再做修改；扩展信息只支持单聊和群组，其它会话类型不能设置扩展信息。
isDisableUpdateLastMessage
Link copied to clipboard
public boolean isDisableUpdateLastMessage()
isEmptyContent
Link copied to clipboard
public boolean isEmptyContent()
isHasChanged
Link copied to clipboard
public boolean isHasChanged()
消息是否被修改过
isMayHasMoreMessagesBefore
Link copied to clipboard
public boolean isMayHasMoreMessagesBefore()
isNeedReceipt
Link copied to clipboard
public boolean isNeedReceipt()
isOffline
Link copied to clipboard
public boolean isOffline()
是否是离线消息 从数据库获取的消息，该字段无效 只在接收消息的回调方法中有效如果消息为离线消息，则为 YES 其他情况均为 NO
isSentReceipt
Link copied to clipboard
public boolean isSentReceipt()
obtain
Link copied to clipboard
public static Message obtain(ConversationIdentifier conversationIdentifier, MessageContent content)
public static Message obtain(String targetId, ConversationType type, MessageContent content)
public static Message obtain(String targetId, ConversationType type, String channelId, MessageContent content)
构造函数。
setCanIncludeExpansion
Link copied to clipboard
public void setCanIncludeExpansion(boolean canIncludeExpansion)
设置是否可以包含扩展信息
setChannelId
Link copied to clipboard
public void setChannelId(String channelId)
设置频道 id，长度限制 20 字符
setContent
Link copied to clipboard
public void setContent(MessageContent content)
设置消息内容。
setConversationType
Link copied to clipboard
public void setConversationType(ConversationType conversationType)
设置会话类型。
setDirectedUserIds
Link copied to clipboard
public void setDirectedUserIds(List<String> directedUserIds)
设置定向用户列表
setDisableUpdateLastMessage
Link copied to clipboard
public void setDisableUpdateLastMessage(boolean disableUpdateLastMessage)
setExpansion
Link copied to clipboard
public void setExpansion(HashMap<String, String> expansion)
设置消息扩展信息列表 扩展信息只支持单聊和群组，其它会话类型不能设置扩展信息。 默认消息扩展字典 key 长度不超过 32 ，value 长度不超过 4096 ，单次设置扩展数量最大为 20，消息的扩展总数不能超过 300
setExtra
Link copied to clipboard
public void setExtra(String extra)
设置消息的附加信息。
setGroupReadReceiptInfoV2
Link copied to clipboard
public void setGroupReadReceiptInfoV2(GroupReadReceiptInfoV2 v2)
设置已读回执 V2 信息
setHasChanged
Link copied to clipboard
public void setHasChanged(boolean hasChanged)
设置消息是否被修改过
setMessageConfig
Link copied to clipboard
public void setMessageConfig(MessageConfig messageConfig)
设置消息配置
setMessageDirection
Link copied to clipboard
public void setMessageDirection(Message.MessageDirection messageDirection)
设置消息方向。
setMessageId
Link copied to clipboard
public void setMessageId(int messageId)
设置本地存储的消息的唯一值（数据库索引唯一值）。
setMessagePushConfig
Link copied to clipboard
public void setMessagePushConfig(MessagePushConfig messagePushConfig)
设置推送配置
setNeedReceipt
Link copied to clipboard
public void setNeedReceipt(boolean needReceipt)
setObjectName
Link copied to clipboard
public void setObjectName(String objectName)
设置消息对象名称。 消息对象名称即 io.rong.imlib.
setOffline
Link copied to clipboard
public void setOffline(boolean offLine)
设置是否是离线消息
setReadReceiptInfo
Link copied to clipboard
public void setReadReceiptInfo(ReadReceiptInfo readReceiptInfo)
设置已读回执状态
setReadReceiptInfoV4
Link copied to clipboard
public void setReadReceiptInfoV4(ReadReceiptInfoV4 readReceiptInfo)
设置已读回执 V4 信息
setReadTime
Link copied to clipboard
public void setReadTime(long readTime)
setReceivedStatus
Link copied to clipboard
public void setReceivedStatus(Message.ReceivedStatus receivedStatus)
设置消息的接收状态。
setReceivedTime
Link copied to clipboard
public void setReceivedTime(long receivedTime)
设置消息接收时间（Unix 时间戳、毫秒）。 接收时间为消息到达接收客户端时客户端的本地时间。
setSenderUserId
Link copied to clipboard
public void setSenderUserId(String senderUserId)
设置发送消息的用户 id。
setSentReceipt
Link copied to clipboard
public void setSentReceipt(boolean sentReceipt)
setSentStatus
Link copied to clipboard
public void setSentStatus(Message.SentStatus sentStatus)
设置消息的发送状态。
setSentTime
Link copied to clipboard
public void setSentTime(long sentTime)
设置消息发送时间（Unix 时间戳、毫秒）。 发送时间为消息从发送客户端到达服务器时的服务器时间。
setTargetId
Link copied to clipboard
public void setTargetId(String targetId)
设置目标 id。 根据不同的 conversationType，可能是用户 id、讨论组 id、群组 id 或聊天室 id。
setUId
Link copied to clipboard
public void setUId(String UId)
设置服务器消息唯一 id（在同一个 AppKey 下全局唯一）
toString
Link copied to clipboard
public String toString()
writeToParcel
Link copied to clipboard
public void writeToParcel(Parcel dest, int flags)