本来类似于这种第三方的功能是没有必要写博客的,但是由于环信客服功能的文档实在版本过旧,所以在此记录下,希望能给大家带来一点便利。

工具: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客户端客服聊天功能相关推荐

  1. iOS 基于环信SDK实现即时通讯-文字聊天

    这里介绍集成环信SDK3.0自定义聊天页面,后面有练习项目地址 首先到环信官网下载环信SDK.由于后续会实现语音.视频,我这里使用的是带有语音的SDK 下载完成后把HyphenateFullSDK文件 ...

  2. Android基于环信SDK开发IM即时聊天(一)

    2016-09-02更新:可以看一下最新的这篇文章和源码,Android基于环信SDK开发IM即时聊天(二) 目前市面上我了解的做第三方即时聊天SDK的有两家:环信.融云,这里我使用环信SDK来完成即 ...

  3. Android基于环信开发的即时通讯APP

    Android基于环信开发的即时通讯APP,源代码在Github上,GitHub地址为:https://github.com/PowerDos/BLChat ,希望能够帮到你们,下面是系统简介. 简介 ...

  4. Android基于环信SDK开发IM即时聊天(二)

    声明1:北京时间现在是2019/6/10,评论里的问题我看到了,这几天我找时间看看源代码问题出在哪,在此感谢大家的监督 声明2:此Demo我是在5.1测试机上测试通过,感谢WTQ_DOMIAN的评论, ...

  5. Android基于环信自定义消息实现转账红包(一)

    最近做了一个项目,需要实现转账红包功能.我这里接入的是环信,我自己做的过程中也比较坎坷,所以想把实现的方法整理了一下分享给大家(如果大家有更好的实现方法,欢迎评论区留言,废话不多说了开始上货,东西有点 ...

  6. android 自定义表情包,android基于环信的聊天和表情自定义

    环信sdk的导入 自定义聊天界面 此处只有静态图,请谅解. 自定义表情发送 自定义聊天界面 简单说下自定义的聊天界面,一个带有recyclerview和的xml文件,和对应的adapter即可.rec ...

  7. 基于环信视频语音通话功能

    这段时间写基于环信的视频语音通话功能,看环信官方给的demo发现不怎么好写,然后通过各种查资料,又结合文档,终于还是在借助别人的 demo下完成了这个功能.汗颜!!! 首先当我们点击视频通话时-> ...

  8. 基于环信的仿QQ即时通讯的简单实现

    代码地址如下: http://www.demodashi.com/demo/11645.html 我的博客地址 之前一直想实现聊天的功能,但是感觉有点困难,今天看了环信的API,就利用下午的时间动手试 ...

  9. mui初级入门教程(五)— 聊聊即时通讯(IM),基于环信 web im SDK

    文章来源:小青年原创 发布时间:2016-06-15 关键词:mui,环信 web im,html5+,im,页面传值,缓存 转载需标注本文原始地址: http://zhaomenghuan.gith ...

  10. android 环信集成,Android Studio下的环信即时通讯简单集成

    环信即时通讯云是全球最大的即时通讯云 PaaS 平台,可以快速实现APP的即时通讯的功能,官方的DEMO是基于Eclipse开发的,对于新版本的Android Studio支持不太好,下面就简单说一下 ...

最新文章

  1. 【新书】用Python3六步掌握机器学习第二版,469页pdf,Mastering Machine Learning
  2. js中对象的私有属性和公有属性
  3. JAVA关于字符串字符数组处理的小题目
  4. 案例分析:产品中非模态反馈”信息设计的意义与方式
  5. [云炬创业基础笔记]第五章创业机会评估测试8
  6. 深入学习SAP UI5框架代码系列之三:HTML原生事件 VS UI5 Semantic事件
  7. 剑指offer之二维数组中查找
  8. java中字符串的精确匹配_Java最佳实践–字符串性能和精确字符串匹配
  9. Windows编程初步(一)
  10. 《兔兔公司的历史》那些年,百度的荣耀和沉沦
  11. 《三毛。。。。》烂漫
  12. hdu-5867 Water problem(水题)
  13. python熊猫烧香_熊猫烧香完整源代码
  14. Win10锁屏壁纸位置在哪?默认锁屏壁纸怎么提取
  15. IDEA 使用破解补丁激活
  16. ssms远程服务器地址,SSMS无法连接到远程服务器,崩溃
  17. How to Read a Visualization Research Paper: Extracting the Essentials
  18. mysql 字符串的hash函数_经典字符串Hash函数介绍 - yanjun_1982的专栏 - CSDNBlog
  19. android 蓝牙hf编程,基于Android蓝牙Inband ring功能实现.doc
  20. Kali持久加密USB的制作

热门文章

  1. C/C++项目:谁都爱玩的4399小游戏黄金矿工教程
  2. lsa ospf的opaque_OSPF LSA类型详解
  3. Minimum spanning tree
  4. 第五章 Spanning Tree协议安全攻防
  5. 曾经沧海难为水,除却巫山不是云。
  6. 中国大学最卷的专业,让我读上了
  7. 1076 Wifi密码
  8. 离散数学 | 数理逻辑
  9. 如何提升Excel水平?5个Excel常用技巧,学会不加班
  10. 2022中国汽车测试及质量监控博览会邀请函