android客服功能实现,基于环信实现android客户端客服聊天功能
本来类似于这种第三方的功能是没有必要写博客的,但是由于环信客服功能的文档实在版本过旧,所以在此记录下,希望能给大家带来一点便利。
工具:androidStudio
第1步:
注册一个环信的账号,地址如下,有了直接登录就可以了。https://kefu.easemob.com/mo/login
![登录进来的界面](https://img-blog.csdn.net/20171102190844936?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbXV6aWxpMTIwNg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
然后切换右上角的管理员模式,进入如下界面:
点击左面的列表中的渠道管理——手机App
然后添加App关联——快速创建
这个时候会出现很多的信息出现如下界面:
这里需要用到的为AppKey。然后点击左边列表的设置——企业信息,查看租户id(5位纯数字)
这里的IM服务号需要记录,后面会用到。
到这里,前期的准备信息工作算是完成。
第2步
找到项目的app下的build.gradle,添加如下信息:
//环信客服SDK
compile ‘com.hyphenate:kefu-easeui-android:1.1.2’ //或者 compile ‘com.hyphenate:kefu-easeui-android:1.1.2’
//EaseUI中 头像获取用到了glide,请添加glide库
compile ‘com.github.bumptech.glide:glide:3.7.0’ //其他版本也可以
//EaseUI中,fragment用到了android-support-v4包
compile ‘com.android.support:support-v4:23.1.1’ //其他版本也可以
第3步
设置清单文件
权限部分:
-
android:name="com.github.darren.huanx.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
android:name="com.github.darren.huanx.permission.MIPUSH_RECEIVE"
android:protectionLevel="signatureOrSystem" />
< application>中的信息如下:
android:name="com.hyphenate.chat.EMGCMBroadcastReceiver"
android:exported="true"
android:permission="com.google.android.c2dm.permission.SEND">
android:name="com.hyphenate.chat.EMGCMListenerService"
android:exported="false" />
android:name=".receiver.GCMPushBroadCast"
android:exported="false">
android:name="com.huawei.hms.client.appid"
android:value="10492024" />
android:name="com.xiaomi.mipush.sdk.PushMessageHandler"
android:enabled="true"
android:exported="true"
tools:ignore="ExportedService" />
android:name="com.xiaomi.mipush.sdk.MessageHandleService"
android:enabled="true" />
android:name="com.hyphenate.chat.EMMipushReceiver"
android:exported="true"
tools:ignore="ExportedReceiver">
在自己的application中进行初始化:
/** * 初始化客服配置 */
private void initKefuConfig() {
ChatClient.Options options = new ChatClient.Options();
//必填项,appkey获取地址:kefu.easemob.com,“管理员模式 > 渠道管理 > 手机APP”页面的关联的“AppKey”
options.setAppkey("1458170906068252#kefuchannelapp47129");
//必填项,tenantId获取地址:kefu.easemob.com,“管理员模式 > 设置 > 企业信息”页面的“租户ID”
options.setTenantId("47129");
// 设置为true后,将打印日志到logcat, 发布APP时应关闭该选项
options.setConsoleLog(true);
//appid从华为开发者平台获取
// Kefu SDK 初始化
if (!ChatClient.getInstance().init(this, options)){
return;
}
ChatClient.getInstance().setDebugMode(true);
// Kefu EaseUI的初始化
UIProvider.getInstance().init(this);
}
环信客服功能需要先登录然后才能进行聊天,先注册一个账号,注册代码如下:
ChatClient.getInstance().createAccount(username, password, new Callback() {
@Override
public void onSuccess() {
Log.i(TAG, "creat_onSuccess: ");
isConnected = true;
}
@Override
public void onError(int errorCode, String s) {
Log.i(TAG, "creat_onError: " + s + i);
if (errorCode == Error.NETWORK_ERROR){
Log.i(TAG, "creat_onError: " + "网络连接不可用,请检查网络" + errorCode);
}else if (errorCode == Error.USER_ALREADY_EXIST){
Log.i(TAG, "creat_onError: " + "用户已经存在" + errorCode);
}else if(errorCode == Error.USER_AUTHENTICATION_FAILED){
Log.i(TAG, "creat_onError: " + "无开放注册权限" + errorCode);
} else if (errorCode == Error.USER_ILLEGAL_ARGUMENT){
Log.i(TAG, "creat_onError: " + "用户名不合法" + errorCode);
}else {
Log.i(TAG, "creat_onError: " + "注册失败!" + errorCode);
}
isConnected = false;
}
@Override
public void onProgress(int i, String s) {
Log.i(TAG, "creat_onProgress: " + s);
}
});
username和password自己随便输入就好了。
注册完登录,登录代码如下:
callback与上面的相同
public void toLogin(String userName,String passWord,Callback callback){
ChatClient.getInstance().login(userName, passWord, callback);
}
登录之后就可以进行聊天了,打开聊天页面代码如下:
IMNumber为第1步中记录的IM服务号
*/
public void toChatActivity(final String IMNumber,final Activity activity) {
activity.runOnUiThread(new Runnable() {
@Override
public void run() {
IntentBuilder builder = new IntentBuilder(activity);
//获取地址:kefu.easemob.com,“管理员模式 > 渠道管理 > 手机APP”页面的关联的“IM服务号”
builder.setServiceIMNumber(IMNumber);
Intent intent = builder.build();
activity.startActivity(intent);
// Toast.makeText(activity, "开始聊天", Toast.LENGTH_LONG).show();
}
});
}
到这里就已经可以打开环信sdk内置的聊天页面了,并可以发消息。
注意,一定要参考官方的demo,文档真的有点老。
android客服功能实现,基于环信实现android客户端客服聊天功能相关推荐
- iOS 基于环信SDK实现即时通讯-文字聊天
这里介绍集成环信SDK3.0自定义聊天页面,后面有练习项目地址 首先到环信官网下载环信SDK.由于后续会实现语音.视频,我这里使用的是带有语音的SDK 下载完成后把HyphenateFullSDK文件 ...
- Android基于环信SDK开发IM即时聊天(一)
2016-09-02更新:可以看一下最新的这篇文章和源码,Android基于环信SDK开发IM即时聊天(二) 目前市面上我了解的做第三方即时聊天SDK的有两家:环信.融云,这里我使用环信SDK来完成即 ...
- Android基于环信开发的即时通讯APP
Android基于环信开发的即时通讯APP,源代码在Github上,GitHub地址为:https://github.com/PowerDos/BLChat ,希望能够帮到你们,下面是系统简介. 简介 ...
- Android基于环信SDK开发IM即时聊天(二)
声明1:北京时间现在是2019/6/10,评论里的问题我看到了,这几天我找时间看看源代码问题出在哪,在此感谢大家的监督 声明2:此Demo我是在5.1测试机上测试通过,感谢WTQ_DOMIAN的评论, ...
- Android基于环信自定义消息实现转账红包(一)
最近做了一个项目,需要实现转账红包功能.我这里接入的是环信,我自己做的过程中也比较坎坷,所以想把实现的方法整理了一下分享给大家(如果大家有更好的实现方法,欢迎评论区留言,废话不多说了开始上货,东西有点 ...
- android 自定义表情包,android基于环信的聊天和表情自定义
环信sdk的导入 自定义聊天界面 此处只有静态图,请谅解. 自定义表情发送 自定义聊天界面 简单说下自定义的聊天界面,一个带有recyclerview和的xml文件,和对应的adapter即可.rec ...
- 基于环信视频语音通话功能
这段时间写基于环信的视频语音通话功能,看环信官方给的demo发现不怎么好写,然后通过各种查资料,又结合文档,终于还是在借助别人的 demo下完成了这个功能.汗颜!!! 首先当我们点击视频通话时-> ...
- 基于环信的仿QQ即时通讯的简单实现
代码地址如下: http://www.demodashi.com/demo/11645.html 我的博客地址 之前一直想实现聊天的功能,但是感觉有点困难,今天看了环信的API,就利用下午的时间动手试 ...
- mui初级入门教程(五)— 聊聊即时通讯(IM),基于环信 web im SDK
文章来源:小青年原创 发布时间:2016-06-15 关键词:mui,环信 web im,html5+,im,页面传值,缓存 转载需标注本文原始地址: http://zhaomenghuan.gith ...
- android 环信集成,Android Studio下的环信即时通讯简单集成
环信即时通讯云是全球最大的即时通讯云 PaaS 平台,可以快速实现APP的即时通讯的功能,官方的DEMO是基于Eclipse开发的,对于新版本的Android Studio支持不太好,下面就简单说一下 ...
最新文章
- 【新书】用Python3六步掌握机器学习第二版,469页pdf,Mastering Machine Learning
- js中对象的私有属性和公有属性
- JAVA关于字符串字符数组处理的小题目
- 案例分析:产品中非模态反馈”信息设计的意义与方式
- [云炬创业基础笔记]第五章创业机会评估测试8
- 深入学习SAP UI5框架代码系列之三:HTML原生事件 VS UI5 Semantic事件
- 剑指offer之二维数组中查找
- java中字符串的精确匹配_Java最佳实践–字符串性能和精确字符串匹配
- Windows编程初步(一)
- 《兔兔公司的历史》那些年,百度的荣耀和沉沦
- 《三毛。。。。》烂漫
- hdu-5867 Water problem(水题)
- python熊猫烧香_熊猫烧香完整源代码
- Win10锁屏壁纸位置在哪?默认锁屏壁纸怎么提取
- IDEA 使用破解补丁激活
- ssms远程服务器地址,SSMS无法连接到远程服务器,崩溃
- How to Read a Visualization Research Paper: Extracting the Essentials
- mysql 字符串的hash函数_经典字符串Hash函数介绍 - yanjun_1982的专栏 - CSDNBlog
- android 蓝牙hf编程,基于Android蓝牙Inband ring功能实现.doc
- Kali持久加密USB的制作