相信技术的力量

Android集成融云IM

融云后台申请账号,创建应用,IM服务->应用表示->添加ApplicationID

融云初始化
向服务端获取融云Token,客户端connect()连接融云服务器
更新用户资料时,服务端同步将信息更新到融云服务器
客户端注册广播接收者PushMessageReceiver,用于后台运行时的消息接收

融云集成的坑

RongIM.connect()不走回调方法 ,没有IPC进程

原因:

  • .so集成失败
  • 安卓7.0以上的权限问题, 融云Lib的targetSDK要社会为24以下,比如23.

解决方案:

直接把项目的targetSDK变为23,虽然解决了融云.so集成的问题,有了IPC进程,但是无法解决全面屏适配问题.

因此,最终解决方案,还是直接引入`libsqlite.so`文件.可参考下方连接.亲测可用,已解决

参考:

https://juejin.im/post/5b6e91caf265da0f7c4ff60d
https://blog.csdn.net/Alex77886/article/details/82188733
https://blog.csdn.net/java04/article/details/54617151

Fragment里会话列表无数据

原因:没有在Activity里配置会话类型(注:必须在所属的Activity里)

//会话类型 以及是否聚合显示
HashMap<String, Boolean> hashMap = new HashMap<>();
hashMap.put(Conversation.ConversationType.PRIVATE.getName(),false);
hashMap.put(Conversation.ConversationType.PUSH_SERVICE.getName(),true);
hashMap.put(Conversation.ConversationType.SYSTEM.getName(),true);
RongIM.getInstance().startConversationList(getContext(),hashMap);

⬆️