Class MessageViewModel
-
- All Implemented Interfaces:
public class MessageViewModel
-
-
Field Summary
Fields Modifier and Type Field Description public final static intDEFAULT_COUNTpublic final static intDEFAULT_REMOTE_COUNTpublic final static intSHOW_UNREAD_MESSAGE_COUNTpublic static Array<String>writePermission
-
Constructor Summary
Constructors Constructor Description MessageViewModel(Application application)
-
Method Summary
Modifier and Type Method Description voidbindConversation(ConversationIdentifier conversationIdentifier, Bundle bundle)voidonGetHistoryMessage(List<Message> messages, boolean isHasMoreMsg)初始化加载本地消息 下拉加载历史消息 voidonGetHistoryMessage(List<Message> messages)初始化加载本地消息 下拉加载历史消息 UiMessagemapUIMessage(Message message)voidprocessHistoryDividerMessage()voidrefreshAllMessage()MessagegetFirstUnreadMessage()voidsetFirstUnreadMessage(Message firstUnreadMessage)intfindPositionByMessageId(int messageId)StringgetCurTargetId()ConversationTypegetCurConversationType()ConversationIdentifiergetConversationIdentifier()voidrefreshAllMessage(boolean force)voidonLoadMoreMessage(List<Message> messages)上拉加载更多消息 voidonReloadMessage(List<Message> messages)normal状态点击历史消息bar history状态点击新消息bar MediatorLiveData<PageEvent>getPageEventLiveData()voidonWarnClick(UiMessage uiMessage)voidonItemClick(UiMessage uiMessage)booleanonItemLongClick(UiMessage uiMessage)voidonUserPortraitClick(Context context, ConversationType conversationType, UserInfo userInfo, String targetId)booleanonUserPortraitLongClick(Context context, ConversationType conversationType, UserInfo userInfo, String targetId)voidreSendMessage(Message message)voidonAudioClick(UiMessage uiMessage)booleanonBackPressed()voidquitEditMode()退出编辑模式 UiMessagefindUIMessage(String messageUId)voidonSendMessage(SendEvent event)voidonSendMediaMessage(SendMediaEvent event)voidonDownloadMessage(DownloadEvent event)voidonDeleteMessage(DeleteEvent event)voidonRecallEvent(RecallEvent event)voidonRefreshEvent(RefreshEvent event)voidonInsertMessage(InsertEvent event)voidonClearMessages(ClearEvent event)UiMessagefindUIMessage(int messageId)voidremoveUIMessage(int messageId)voidrefreshSingleMessage(UiMessage uiMessage)intfindPositionBySendTime(long sentTime)voidexecutePageEvent(PageEvent pageEvent)voidprocessNewMessageUnread(boolean isMainThread)voidupdateNewMentionMessageUnreadBar()voidhideHistoryBar()intgetRefreshMessageId()longgetRefreshSentTime()longgetLoadMoreSentTime()booleanisRemoteMessageLoadFinish()voidsetRemoteMessageLoadFinish(boolean remoteMessageLoadFinish)booleanisScrollToBottom()voidsetScrollToBottom(boolean scrollToBottom)voidupdateMentionMessage(Message message)voidexecutePostPageEvent(PageEvent pageEvent)异步线程切换到主线程执行 voidonReadReceiptRequestClick(UiMessage uiMessage)voidonReadReceiptStateClick(UiMessage uiMessage)voidonReEditClick(UiMessage uiMessage)voidonRefresh()voidcleanUnreadNewCount()voidaddUnreadNewMessage(UiMessage message)voidnewMessageBarClick()voidunreadBarClick()voidnewMentionMessageBarClick()voidenterEditState()启动编辑模式 voidforwardMessage(Intent data)List<UiMessage>getSelectedUiMessages()voidonLoadMore()booleanisForegroundActivity()voidonViewClick(int clickType, UiMessage data)booleanonViewLongClick(int clickType, UiMessage data)LiveData<List<UiMessage>>getUiMessageLiveData()MediatorLiveData<Integer>getNewMessageUnreadLiveData()MediatorLiveData<Boolean>IsEditStatusLiveData()List<UiMessage>getNewUnReadMessages()List<Message>getNewUnReadMentionMessages()voidsetNewUnReadMentionMessages(List<Message> newUnReadMentionMessages)voidshowHistoryBar(int unreadMessageCount)LiveData<Integer>getHistoryMessageUnreadLiveData()voidshowNewMentionMessageBar(int unreadMessageCount)voidhideNewMentionMessageBar()LiveData<Integer>getNewMentionMessageUnreadLiveData()voidonScrolled(RecyclerView recyclerView, int dx, int dy, int headerCount, int footerCount)List<UiMessage>getUiMessages()voidonExistUnreadMessage(Conversation conversation, int unreadMessageCount)voidonResume()voidcleanUnreadStatus()清理未读状态 booleanisInitUnreadMessageFinish()voidsetInitUnreadMessageFinish(boolean initUnreadMessageFinish)booleanisInitMentionedMessageFinish()voidsetInitMentionedMessageFinish(boolean initMentionedMessageFinish)voidonPause()voidstopPlay()voidonStop()voidonDestroy()booleanfilterMessageToHideNewMessageBar(UiMessage uiMessage)过滤只存储不计数消息,使其不显示聊天页面右下角新消息气泡UI. booleanisNormalState()booleanisHistoryState()voidonUserUpdate(UserInfo user)voidonGroupUpdate(Group group)voidonGroupUserInfoUpdate(GroupUserInfo groupUserInfo)voidinitTranslationListener()voidunInitTranslationListener()voidonTranslationResult(int code, RCTranslationResultWrapper result)-
-
Method Detail
-
bindConversation
void bindConversation(ConversationIdentifier conversationIdentifier, Bundle bundle)
-
onGetHistoryMessage
void onGetHistoryMessage(List<Message> messages, boolean isHasMoreMsg)
初始化加载本地消息 下拉加载历史消息
-
onGetHistoryMessage
void onGetHistoryMessage(List<Message> messages)
初始化加载本地消息 下拉加载历史消息
-
mapUIMessage
UiMessage mapUIMessage(Message message)
-
processHistoryDividerMessage
void processHistoryDividerMessage()
-
refreshAllMessage
void refreshAllMessage()
-
getFirstUnreadMessage
Message getFirstUnreadMessage()
-
setFirstUnreadMessage
void setFirstUnreadMessage(Message firstUnreadMessage)
-
findPositionByMessageId
int findPositionByMessageId(int messageId)
-
getCurTargetId
String getCurTargetId()
-
getCurConversationType
ConversationType getCurConversationType()
-
getConversationIdentifier
ConversationIdentifier getConversationIdentifier()
-
refreshAllMessage
void refreshAllMessage(boolean force)
-
onLoadMoreMessage
void onLoadMoreMessage(List<Message> messages)
上拉加载更多消息
-
onReloadMessage
void onReloadMessage(List<Message> messages)
normal状态点击历史消息bar history状态点击新消息bar
-
getPageEventLiveData
MediatorLiveData<PageEvent> getPageEventLiveData()
-
onWarnClick
void onWarnClick(UiMessage uiMessage)
-
onItemClick
void onItemClick(UiMessage uiMessage)
-
onItemLongClick
boolean onItemLongClick(UiMessage uiMessage)
-
onUserPortraitClick
void onUserPortraitClick(Context context, ConversationType conversationType, UserInfo userInfo, String targetId)
-
onUserPortraitLongClick
boolean onUserPortraitLongClick(Context context, ConversationType conversationType, UserInfo userInfo, String targetId)
-
reSendMessage
void reSendMessage(Message message)
-
onAudioClick
void onAudioClick(UiMessage uiMessage)
-
onBackPressed
boolean onBackPressed()
-
quitEditMode
void quitEditMode()
退出编辑模式
-
findUIMessage
UiMessage findUIMessage(String messageUId)
-
onSendMessage
void onSendMessage(SendEvent event)
-
onSendMediaMessage
void onSendMediaMessage(SendMediaEvent event)
-
onDownloadMessage
void onDownloadMessage(DownloadEvent event)
-
onDeleteMessage
void onDeleteMessage(DeleteEvent event)
-
onRecallEvent
void onRecallEvent(RecallEvent event)
-
onRefreshEvent
void onRefreshEvent(RefreshEvent event)
-
onInsertMessage
void onInsertMessage(InsertEvent event)
-
onClearMessages
void onClearMessages(ClearEvent event)
-
findUIMessage
UiMessage findUIMessage(int messageId)
-
removeUIMessage
void removeUIMessage(int messageId)
-
refreshSingleMessage
void refreshSingleMessage(UiMessage uiMessage)
-
findPositionBySendTime
int findPositionBySendTime(long sentTime)
-
executePageEvent
void executePageEvent(PageEvent pageEvent)
-
processNewMessageUnread
void processNewMessageUnread(boolean isMainThread)
-
updateNewMentionMessageUnreadBar
void updateNewMentionMessageUnreadBar()
-
hideHistoryBar
void hideHistoryBar()
-
getRefreshMessageId
int getRefreshMessageId()
-
getRefreshSentTime
long getRefreshSentTime()
-
getLoadMoreSentTime
long getLoadMoreSentTime()
-
isRemoteMessageLoadFinish
boolean isRemoteMessageLoadFinish()
-
setRemoteMessageLoadFinish
void setRemoteMessageLoadFinish(boolean remoteMessageLoadFinish)
-
isScrollToBottom
boolean isScrollToBottom()
-
setScrollToBottom
void setScrollToBottom(boolean scrollToBottom)
-
updateMentionMessage
void updateMentionMessage(Message message)
-
executePostPageEvent
void executePostPageEvent(PageEvent pageEvent)
异步线程切换到主线程执行
- Parameters:
pageEvent- 执行的 event
-
onReadReceiptRequestClick
void onReadReceiptRequestClick(UiMessage uiMessage)
-
onReadReceiptStateClick
void onReadReceiptStateClick(UiMessage uiMessage)
-
onReEditClick
void onReEditClick(UiMessage uiMessage)
-
onRefresh
void onRefresh()
-
cleanUnreadNewCount
void cleanUnreadNewCount()
-
addUnreadNewMessage
void addUnreadNewMessage(UiMessage message)
-
newMessageBarClick
void newMessageBarClick()
-
unreadBarClick
void unreadBarClick()
-
newMentionMessageBarClick
void newMentionMessageBarClick()
-
enterEditState
void enterEditState()
启动编辑模式
-
forwardMessage
void forwardMessage(Intent data)
-
getSelectedUiMessages
List<UiMessage> getSelectedUiMessages()
-
onLoadMore
void onLoadMore()
-
isForegroundActivity
boolean isForegroundActivity()
-
onViewClick
void onViewClick(int clickType, UiMessage data)
-
onViewLongClick
boolean onViewLongClick(int clickType, UiMessage data)
-
getUiMessageLiveData
LiveData<List<UiMessage>> getUiMessageLiveData()
-
getNewMessageUnreadLiveData
MediatorLiveData<Integer> getNewMessageUnreadLiveData()
-
IsEditStatusLiveData
MediatorLiveData<Boolean> IsEditStatusLiveData()
-
getNewUnReadMessages
List<UiMessage> getNewUnReadMessages()
-
getNewUnReadMentionMessages
List<Message> getNewUnReadMentionMessages()
-
setNewUnReadMentionMessages
void setNewUnReadMentionMessages(List<Message> newUnReadMentionMessages)
-
showHistoryBar
void showHistoryBar(int unreadMessageCount)
-
getHistoryMessageUnreadLiveData
LiveData<Integer> getHistoryMessageUnreadLiveData()
-
showNewMentionMessageBar
void showNewMentionMessageBar(int unreadMessageCount)
-
hideNewMentionMessageBar
void hideNewMentionMessageBar()
-
getNewMentionMessageUnreadLiveData
LiveData<Integer> getNewMentionMessageUnreadLiveData()
-
onScrolled
void onScrolled(RecyclerView recyclerView, int dx, int dy, int headerCount, int footerCount)
-
getUiMessages
List<UiMessage> getUiMessages()
-
onExistUnreadMessage
void onExistUnreadMessage(Conversation conversation, int unreadMessageCount)
-
onResume
void onResume()
-
cleanUnreadStatus
void cleanUnreadStatus()
清理未读状态
-
isInitUnreadMessageFinish
boolean isInitUnreadMessageFinish()
-
setInitUnreadMessageFinish
void setInitUnreadMessageFinish(boolean initUnreadMessageFinish)
-
isInitMentionedMessageFinish
boolean isInitMentionedMessageFinish()
-
setInitMentionedMessageFinish
void setInitMentionedMessageFinish(boolean initMentionedMessageFinish)
-
onPause
void onPause()
-
stopPlay
void stopPlay()
-
onStop
void onStop()
-
onDestroy
void onDestroy()
-
filterMessageToHideNewMessageBar
boolean filterMessageToHideNewMessageBar(UiMessage uiMessage)
过滤只存储不计数消息,使其不显示聊天页面右下角新消息气泡UI.
-
isNormalState
boolean isNormalState()
-
isHistoryState
boolean isHistoryState()
-
onUserUpdate
void onUserUpdate(UserInfo user)
-
onGroupUpdate
void onGroupUpdate(Group group)
-
onGroupUserInfoUpdate
void onGroupUserInfoUpdate(GroupUserInfo groupUserInfo)
-
initTranslationListener
void initTranslationListener()
-
unInitTranslationListener
void unInitTranslationListener()
-
onTranslationResult
void onTranslationResult(int code, RCTranslationResultWrapper result)
-
-
-
-