网页
综合
更新时间 2026-11-13 20:01:42
Android 进阶控制 | 泡泡 IM 开发文档
自动蜘蛛
www.popoim.com
正文约 2350 字
本页按需查阅,首次接入不需要把这些方法全部实现。 按快速接入完成配置、页面和登录后,SDK 已经处理常用的聊天界面、消息收发、好友与群管理、同步等流程。只有想从商品页直接打开聊天、把未读数放到自己的导航栏、同步头像昵称,或接入本页列出的平台能力时,才需要额外调用相应方法。
以下为宿主使用的 Core 与 UIKit 方法,Kotlin 和 Java 调用同一套 API。用户、认证、会话目标、未读与错误字段见 SDK 对象说明。
“方法”是 SDK 提供给你调用的操作;“参数”是调用时要填写的信息;“返回值”是操作交回的结果。“回调”或“监听”表示操作完成或数据变化时,SDK 调用你提供的函数通知你。只订阅需要的数据,在所属页面结束时解除监听。
下面是两种常见的业务联动,选需要的使用即可。调用前应已完成快速接入并登录;例子里的用户和群 ID 要换成真实、当前账号有权访问的目标。
在当前 Activity 中,例如点击客户资料页的“发消息”时执行:
this 是当前 Activity;showError 是你产品中调用通用 Toast 的方法。打开群聊改用 PopoConversationTarget.group(groupId),填写公开群 ID。回调成功表示聊天页已启动。
renderUnread 是你自己的角标展示函数。conversation 是消息未读总数,contact 是待处理申请数;用当前值替换角标,不要累加,数值 100 显示为 99+。
保存 unreadListener,在所属页面结束时移除同一个实例:
把服务地址与取凭证函数组合成配置,供初始化时使用。
PopoConfig(serverUrl, authProvider) 或 PopoConfig(serverUrl, webSocketUrl, authProvider) 返回配置对象。
Provider 成功调用 callback.onSuccess(auth: PopoAuthInfo);失败调用 callback.onError(error: Throwable),每次只完成一次。PopoAuthInfo(user, token, expireAt) 的 expireAt 为 Long 秒时间戳。
也可使用 PopoConfig.builder(),分别调用 serverUrl(value)、webSocketUrl(value)、authProvider(value);每个设置方法返回当前 Builder,最后 build() 返回 PopoConfig。必需字段仍为 serverUrl 和 authProvider。
在应用启动时登记 SDK 配置。它为后续登录做准备,不会替用户登录你的产品。
返回: void。配置无效或重复初始化等错误抛出 PopoException。初始化不等于登录。
更换实时连接的服务地址,适用于部署地址发生变化的情况。常规接入只在初始化时配置。
参数 url: String 为新的 WS/WSS 地址。
返回: void;地址无效时抛出 PopoException。通常初始化时配置即可,不需要反复调用。
在你的用户登录成功后获取 IM 凭证并加载聊天数据,让该账号可以开始聊天。
参数 callback: PopoCallback 接收完成结果。
返回: void。callback.onComplete(error) 中 error=null 表示认证和首次同步完成;失败时有 PopoException。
让用户启动应用时先看到上次保存在本机的聊天内容,减少等待。只能恢复你已确认身份的当前账号,之后仍需正常登录。
返回: void,结果通过 callback 交付。不请求 Token 或网络;之后仍调用 login。恢复完成不表示已经在线。
用户退出你的产品时同时结束 SDK 登录,避免继续接收旧账号数据。
可调用无参数 logout(),或传 clearLocalData: Boolean。无参数等同 false;true 还会清理当前账号本地数据。
返回: void。用户退出宿主账号时通常使用 true;宿主同时清理自己的登录态。
判断当前账号是否已经完成认证和首次数据加载,供自己的业务入口决定是否继续操作。
返回: Boolean,表示本进程是否完成认证与首次同步,不保证此刻网络在线。
读取当前 SDK 使用的账号 ID,方便与你产品中的当前账号核对。
返回: String 或 null,当前外部用户 ID;没有当前账号时为 null。
你的后端保存头像、昵称等资料后,用它让 SDK 使用当前账号的最新资料。
返回: void。资料由宿主管理时先在宿主后端保存并同步,再更新 SDK。
把 SDK 的消息和申请未读数显示到你自己的导航栏或角标中。
参数 listener: PopoUnreadListener,通过 onUnreadChanged(count: PopoUnreadCount) 接收消息和申请两个未读总数。
返回: void。保留 listener 实例用于移除。
所属页面结束时停止接收未读变化,避免页面已关闭仍被通知。
参数为添加时的同一个 PopoUnreadListener 实例。
返回: void。宿主页面销毁时调用,避免重复监听。
用户收到系统来电推送后,将通话 ID 交给 SDK 核对并处理,避免显示已经结束的来电。
返回: void。SDK 会向服务器确认状态,不应仅凭推送就认定通话仍在振铃。
给你自己的相关网络请求附上设备和版本信息,方便定位问题。它不能代替用户登录凭证。
本页为82搜索生成的网页快照,内容来自站内索引;演示数据的原文链接仅作示例。