Android集成环信easeui,设置圆形头像,修改气泡和扩展栏,跳过打包冲突
初次集成环信的话还是有很多坑的, 我也是个新手,技术客服各种问,各种找人,才堪堪摸到门槛,记录下一点东西,希望给那些初次集成的朋友一点tips.
1,集成环信的时候,如果你不需要很多如视频聊天,等的功能,那么你直接导入easeui这个module就行了, 不需要按照文档里在libs中添加一堆依赖了,会有冲突.
2,在MyApplication里初始化的时候,如果你是导入easeui,那么文档上初始化的有一条就需要改过来了.(后面的东西都是基于easeui写了)
3,然后在你对应的界面跳转聊天界面
Intent chat = new Intent(activity, ChatActivity.class); chat.putExtra(EaseConstant.EXTRA_USER_ID, list.get(position).getName());//对方账号 activity.startActivity(chat);
4,ChatActivity过渡到easeui的聊天界面,不多说,直接上ChatActivity的代码,此处我用的是FrameLayout,
当然你也可以直接用一个LinearLayout.
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/layout_chat"> </FrameLayout>
开始跳转聊天页面了.
EaseChatFragment easeChatFragment = new EaseChatFragment();//环信聊天界面 easeChatFragment.setArguments(getIntent().getExtras());//需要的参数 //切换fragment getSupportFragmentManager().beginTransaction().add(R.id.layout_chat, easeChatFragment).commit();
5,如果你做完上述的,那么恭喜你,你已经简单的集成了环信聊天了,可以在原生界面发送消息什么的了,如果你觉得原生的不好看,
或者你想把头像修改成圆形,自定义气泡框和扩展栏,那么往下看.
a> 修改圆形头像
我先上图圈出几个相关的地方
一不小心多圈了几个地方,不要见怪.没错,首先找到easeUserUtils,如果你的图片请求框架刚好用的Glide,那么很简单,
将这个设置头像方法里有Glide的全都改一下,这里仅仅列举一个,重点是框框里面的,github上已经有大神给封装好了
glide直接设置圆形图片的方法,只需要添加个依赖就行, 各位就不需要再单独写个设置圆形图片的类了.是不是很简单.
compile 'jp.wasabeef:glide-transformations:2.0.1';
b>,修改气泡框
上面手滑的时候圈出来的,EaseChatRowText的两个布局里,修改.9图片就行啦,当然了,不仅仅是这一个
地方要修改,chatrow包下基本都要修改.做完这一步想必大家基本都会了,先上图吧,无图无真相
c>,修改扩展栏
到这里我猜很多人都知道该怎么修改下面的那个扩展栏了,其实在一开始的EaseChatFragment里面就可以
修改扩展栏里的图片,但是怎么修改这个图片, 文字大小呢,下面就不上图了,
要修改这个语音啊,笑脸啊,加号,找到EaseChatPrimaryMenu这个类的布局,ease_widget_chat_primary_menu,
名字太长了, 进去就会发现,真xx简单.
那么修改下面的如图片,位置这些呢,一样,找到EaseChatExtendMenu这个类的布局,ease_chat_menu_item,进去
修改就行了,到此简单的聊天界面修改就完成了.当然想要运行还需要一点必备的东西
6,你会发现发送大图崩溃, 地址位置发送不了,是不是需要集成百度地图呢?no, no ,no;
如果你的app在libs目录下导入了nineoldandroids这个jar包,那么肯定就有冲突了,那就赶紧找找是不是添加了
重复的v4包.
好了,简单的一点集成环信的小tips就到此为止了.
<!--查看大图的easeui--> <activity android:name="com.hyphenate.easeui.ui.EaseShowBigImageActivity" android:screenOrientation="portrait"/> <!-- 地图 --> <activity android:name="com.hyphenate.easeui.ui.EaseBaiduMapActivity" android:screenOrientation="portrait" android:theme="@style/horizontal_slide" /> <!-- 百度地图所需的service --> <service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" /> <meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="3ecea51f560650b1ed8a4b99808f52e8" />
如此,就可以了.
7,最后就是重点了,集成环信之后,当你打包你的apk时,很有可能会遇到java.util.zip.ZipException等等错误,
不过大多数都是v4包冲突,什么ColorRes,什么MutilDex等等很多,教你一招搞定
android {
}
在build.grandle里加上中间这个configurations就行了
configurations { all*.exclude group: 'com.android.support', module: 'support-v4' all*.exclude group: 'com.android.support', module: 'support-annotations' }
Android集成环信easeui,设置圆形头像,修改气泡和扩展栏,跳过打包冲突相关推荐
- Android 集成环信IM,实现头像和昵称的显示
环信中要设置昵称和头像有两种方法,一种是通过请求服务器获得,一种是通过发送扩展消息获得.本人推荐通过发送扩展消息获得,简单又方便.所以下面我就只讲通过发送扩展消息获取的方法. 具体的实现步骤如下: 1 ...
- 集成环信easeUI添加联系人详情页面ListView的显示处理步聚
集成环信easeUI添加联系人详情页面ListView的显示处理步聚 tags:环信集成 文章目录 集成环信easeUI添加联系人详情页面ListView的显示处理步聚 1.建立一个ListView布 ...
- 最新Android集成环信步骤详解
前一阵时间一直以为环信不能被个人用户注册,结果现在想试试结果真的注册进来了,各种打脸.今天趁着晚上有时间把环信继承的步骤做一个记录,方便以后的童鞋们能够快速的集成. 1.第一步:肯定是创建应用喽 那么 ...
- Android集成环信IM,实现为某一个好友设置消息免打扰
环信SDK中是没有提供直接为某一个好友设置消息免打扰的api,其实,所谓的消息免打扰,无非就是在收到好友的消息时,不进行通知,在会话列表中,不显示未读消息数量,因此,我们可以将是否开启免打扰的的状态保 ...
- android 集成环信SDK
集成步骤: 1. 首先在你的项目根目录build.gradle文件的allprojects→repositories属性下加入远程库地址 allprojects {repositories {goog ...
- Android集成环信IM,实现聊天置顶功能
首先是,要实现置顶聊天,那么我们就要有两个List集合,一个是置顶的,一个是不是置顶的.这里,环信给出了EMConversation的一个方法,带大家看看技术文档. 看下这个文档里面说的非常清楚,也就 ...
- Android 集成环信实现单点登录校验,账号异地被挤下线功能。
前言 其实所说的被挤下线功能,就是一个账号在A客户端保持登陆状态,然后又在B客户端进行了登陆操作,那么A客户端就会被顶下线 很多伙伴在开发自己公司产品的时候,一般都会考虑用户账号安全,或者用户账号功能 ...
- Android 集成环信后 无法启动,关于androidx升级后环信sdk集成遇到的问题
18年谷歌对support包等依赖混乱的问题进行了决策并推出androidx,可以有效的解决support包的问题,但版本迁移带给我们程序员很多麻烦的问题,就是之前的sdk很多都会报错,这里用环信的s ...
- android 集成环信 即时通讯
工作这么长时间了,我是一个很懒的人 ,今天正好看见前同事在CSDN上发的博客,记录了那时我们一起工作碰到的问题,勾起了美好的回忆,索性我在记录一下刚刚做完的一些功能,花了将近多半个月做了环信的即时通讯 ...
最新文章
- 2018-2019-1 20165214 《信息安全系统设计基础》第六周学习总结
- sql help cs
- 2017/05/07 java 基础 随笔
- 害怕抑郁症?该系统通过日常交流就能判断你是否有病
- 批量修改root密码#shell脚本
- Java停止线程的方式
- IJCAI 2021 | 腾讯和复旦联合出品:Adv-Makeup人脸黑盒攻击对抗算法
- 【转】Rhythm Of The Rain 雨的旋律
- win python_winpython是什么
- gbq6什么软件能打开_GBQ5是啥文件,用哪个软件打开
- 计算机网络设计校园网实验报告,计算机网络综合设计性实验报告-校园网网络构建方案设计和实现..doc...
- 虚拟机调整C盘分区大小的取巧方法
- 微前端框架 之 single-spa 从入门到精通
- 1960-2019年世界各国人均GDP增长率
- Cannot lock file hash cache (E:\blackWu\github\X5WebView\WebViewX5\.gradle\4.6\fileHashes) as it has
- 数组之entries
- AMD将用FPGA干什么?
- JDK1.8 关于list集合Lambda的使用
- 四大门户免费企业邮箱用户端基础参数对比
- Linux常用基础指令