Android 在线状态订阅与正在输入
qxj-im-core 为 Android 端同样提供完整的 用户在线状态订阅 (Presence) 与 “对方正在输入 (Typing)” 支持。
1. 用户在线状态订阅 (Presence)
1.1 订阅、取消订阅与查询
// 1. 订阅指定用户在线状态(userIDsJson 格式: ["u_1002","u_1003"])
// 返回 JSON 数组: [{"userID":"u_1002","status":1,"platformIDs":[1,5]}]
val statusListJson = callIMCore { cb ->
Open_im_sdk.subscribeUsersStatus(cb, opId(), "[\"u_1002\",\"u_1003\"]")
}
// 2. 取消订阅
callIMCore { cb ->
Open_im_sdk.unsubscribeUsersStatus(cb, opId(), "[\"u_1002\"]")
}
// 3. 查询所有已订阅用户的在线状态
val allSubJson = callIMCore { cb ->
Open_im_sdk.getSubscribeUsersStatus(cb, opId())
}
1.2 监听在线状态实时变化
在 OnUserListener.onUserStatusChanged(userOnlineStatus: String?) 中接收实时推送:
override fun onUserStatusChanged(userOnlineStatus: String?) {
// JSON 示例: {"userID":"u_1002","status":1,"platformIDs":[2]}
}