Android 集成环信EaseUI
来源:互联网 发布:php小说源码手机版 编辑:程序博客网 时间:2024/06/04 21:46
集成环信EaseUI的过程中会遇到各种各样的坑,在此,把这些坑总结出来,纪念一下,那些一步一跌倒的过程
1.Android Studio 中导入EaseUI
打开你的 AS 项目→File→New→Import Module→选择或输入 EaseUI 库路径→Next→Next→Finish。
导入完可能会有如下错误:
最直接的方法就是将EaseUI的build.gradle文件配置改为与主项目一致。
把 v4 包的版本号加大,譬如 compile ‘com.android.support:support-v4:23.1.1’。
2.如果项目使用EaseUI,则不需要再将环信的jar包等导入到主项目中。另外EaseUI中使用到一些第三方,例如Glide、百度地图等。如果主项目中也使用了这些第三方,则需要删除掉主项目中的引用,否则会出现重复导入的冲突问题
如果出现这一类问题,不需要慌张,只需要认真检查,项目中哪些引用与EaseUI重复即可
3.解决冲突问题后,则需要对环信进行初始化
官方给出的初始化如下:
EMOptions options = new EMOptions();// 默认添加好友时,是不需要验证的,改成需要验证options.setAcceptInvitationAlways(false);...//初始化EMClient.getInstance().init(applicationContext, options);//在做打包混淆时,关闭debug模式,避免消耗不必要的资源EMClient.getInstance().setDebugMode(true);
记得在混淆打包时,将debug模式关闭
4.如果你顺利的解决冲突问题,完成初始化,那么恭喜,接下来可以慢慢实现聊天功能了。
环信提供了聊天的fragment。我们可以直接启动聊天会话 fragment
new 出 EaseChatFragment 或者其子类,调用 setArguments 方法传入 chatType(会话类型)和 userId(用户或群id),通过 getSupportFragmentManager() 启动 fragment。
//new出EaseChatFragment或其子类的实例 EaseChatFragment chatFragment = new EaseChatFragment(); //传入参数 Bundle args = new Bundle(); //设置群聊或者单聊 args.putInt(EaseConstant.EXTRA_CHAT_TYPE, EaseConstant.CHATTYPE_GROUP); //传递用户ID args.putString(EaseConstant.EXTRA_USER_ID, "zw123"); chatFragment.setArguments(args); getSupportFragmentManager().beginTransaction().add(R.id.container, chatFragment).commit();
启动fragment后就可以实现简单的聊天功能了
5.EaseUI中并不提供音视频聊天功能,如果需要实现音视频聊天功能,需要自己手动添加
可以参照这篇博客:http://blog.csdn.net/zhangxxxq/article/details/78200577
6.EaseUI自带的头像不是圆形,而UI给的效果图是圆形图片,EaseUI中使用的图片框架为Glide,如果你的项目使用的也是Glide,那就很好实现了
找到EaseUI中的EaseUserUtils,在setUserAvatar方法中有使用Glide加载图片的方法,利用Glide实现圆角图片,可以参照下面博客:
http://blog.csdn.net/zhangxxxq/article/details/77542953
同时,只修改这些是不够的,需要将layout中的默认头像删掉
7.打包混淆,官方给出的混淆:
#------->环信-keep class com.hyphenate.** {*;}-keep class com.superrtc.** {*;}-dontwarn com.hyphenate.**
其他一些第三方的混淆代码,可以参考:
http://blog.csdn.net/zhangxxxq/article/details/78200156
- Android 集成环信EaseUI
- Android使用EaseUI集成环信3.0
- Android环信EaseUI的快速集成
- Android集成环信3.0的easeui
- Android 使用集成环信EaseUI
- studio集成环信EaseUI
- Android如何快速集成环信EaseUI(最强修改版)
- Android环信IM简单集成(EaseUI)
- Android 环信easeui常见问题
- ios 快速集成环信EaseUI
- 即时通信(环信) EaseUI 集成视频
- 环信EaseUI集成遇到的问题
- 环信集成EaseUI自定义消息拓展
- Android 使用easeui 3.0 集成环信即时通讯 我踩过的坑
- Android使用EaseUI集成环信3.0 设置头像和用户名 三
- Android集成环信easeui,设置圆形头像,修改气泡和扩展栏,跳过打包冲突
- Android环信换新即时聊天集成EaseUI的使用v3.0
- Android集成环信EaseUI混淆打包后遇到的问题
- APP的CPU,内存,耗电,流量测试工具
- mysql 权限用户创建
- IDCC 2017第十二届中国IDC产业年度大典即将于12月在京举办1
- 字号、pt、px、em换算对照表
- RxBus 简单使用学习
- Android 集成环信EaseUI
- android 透明式状态栏 或者 沉浸式状态栏
- APP的安全测试点
- react项目中,一些插件版本导致的错误
- Esp8266学习之旅④ 了解PWM,更为深入地用PWM控制一盏LED的亮度变化。(附带demo)
- 序列化与反序列化
- APP的安装卸载测试
- APP的UI测试
- APP功能测试点