Class ConversationListViewModel

    • Constructor Detail

      • ConversationListViewModel

        ConversationListViewModel(Application application)
    • Method Detail

      • getConversationList

         void getConversationList(boolean loadMore, boolean isEventManual, long delayTime)

        从本地数据库获取会话列表。 此处借鉴前端的函数节流思想,在 REFRESH_INTERVAL 时间内,丢弃掉其它触发,只做一次执行。 以便提高接受大量消息时的刷新性能。

        Parameters:
        loadMore - 是否根据上次同步的时间戳拉取更多会话。 false: 从数据库拉取最新 N 条会话。true: 根据 UI 上最后一条会话的时间戳,继续拉取之前的 N 条会话。
        isEventManual - 是否是用还手动触发的刷新获取,手动触发的需要主动关闭下
      • sendRefreshEvent

         void sendRefreshEvent(boolean isEventManual, boolean loadMore)

        发送刷新事件

        Parameters:
        isEventManual - 是否是手动触发的刷新
        loadMore - 是否是加载更多
      • isSupported

         boolean isSupported(Conversation.ConversationType type)
      • isTopPriority

         boolean isTopPriority()

        是否优先显示置顶会话(查询结果的排序方式,是否置顶优先,true 表示置顶会话优先返回,false 结果只以会话时间排序)

      • onUserUpdate

         void onUserUpdate(UserInfo info)

        用户信息发生变更时的回调方法。

        Parameters:
        info - 变更后的用户信息。
      • onGroupUpdate

         void onGroupUpdate(Group group)

        群组信息发生变更时的回调方法。

        Parameters:
        group - 变更后的群信息。
      • onGroupUserInfoUpdate

         void onGroupUserInfoUpdate(GroupUserInfo groupUserInfo)

        群昵称信息发生变更时的回调方法。

        Parameters:
        groupUserInfo - 变更后的群昵称信息。