必威体育Betway必威体育官网
当前位置:首页 > IT技术

Android 集成阿里百川实现在线客服、聊天功能

时间:2019-06-29 00:44:32来源:IT技术作者:seo实验室小编阅读:82次「手机版」
 

阿里百川

Android QQ交流群:813273942

首先要感谢Android 技术 @淘子磊

最近开发中要实现在线客服和客服热线功能,实现在线客服有很多种方式,我觉得阿里百川做的事很好好的,无论是集成Step方面还是UI适配方面,关键还是免费的……

附上链接:

https://login.taobao.com/member/login.jhtml?f=bcbsconsole&sub=true&redirectURL=http%3A%2F%2Fconsole.baichuan.taobao.com%2FAPPlications.htm%3Fspm%3Da3c0d.8121624.0.0.9SD1l2

在app的build.gradle中添加

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
  
    //必选
    compile 'com.alibaba.mobileim:IMCore:2.0.2.1@aar'
    //可选,如果使用SDK的UI必须添加该依赖,如果不使用SDK的UI,完全自己开发UI则无需添加该依赖
    compile 'com.alibaba.mobileim:IMKit:2.0.2.1@aar'
  
}
repositories {
    maven { url 'http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/' }
    flatDir {
        dirs 'libs'
    }
}

初始化方法的调用必须放在Application onCreate方法中

如果您单纯是想体验云旺(OpenIM)的功能,建议拷贝使用以下代码

如果您已经有了百川appkey,请将appkey请替换成您自己的百川appkey,如何查看appkey

1

2

3

4

5

6

7

8

9

10

11

finalString APP_KEY = "23015524";

//必须首先执行这部分代码, 如果在":TCMSSevice"进程中,无需进行云旺(OpenIM)和app业务的初始化,以节省内存;

SysUtil.setApplication(this);

if(SysUtil.isTCMSServiceProcess(this)){

return;

}

//第一个参数是Application context

//这里的APP_KEY即应用创建时申请的APP_KEY,同时初始化必须是在主进程中

if(SysUtil.isMainProcess(application)){

    YWAPI.init(Application, APP_KEY);

}

Step3 获取SDK对象实现

1

2

3

4

5

//此实现不一定要放在Application onCreate中

finalString userid = "testpro1";

//此对象获取到后,保存为全局对象,供APP使用

//此对象跟用户相关,如果切换了用户,需要重新获取

YWIMKit mIMKit = YWAPI.getIMKitinstance(userid, APP_KEY);

Step4 登录

登录需要用到IM账号跟IM密码,如果您单纯是想体验云旺(OpenIM)的功能,建议拷贝使用以下代码。

如果您已经有了百川appkey,您可能需要关注下如何开通IM账号

注意:建议在应用登录的时候,就执行IM的登录,避免因为使用问题造成消息到达率偏低。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

//开始登录

String userid = "testpro1";

String password = "taobao1234";

IYWLoginService loginService = mIMKit.getLoginService();

YWLoginParam loginParam = YWLoginParam.createLoginParam(userid, password);

loginService.login(loginParam,newIWxCallback() {

    @Override

    publicvoidonSuccess(Object... arg0) {

    }

    @Override

    publicvoidonprogress(intarg0) {

        // TODO Auto-generated method stub

    }

    @Override

    publicvoidonERROR(interrCode, String description) {

        //如果登录失败,errCode为错误码,description是错误的具体描述信息

    }

});

Step5 打开会话列表

打开会话列表(Activity)

1

2

intent intent = mIMKit.getConversationActivityIntent();

startActivity(intent);

Step6 打开单聊窗口

打开普通聊天窗口(Activity)

1

2

3

4

finalString target = "testpro2";//消息接收者ID

finalString appkey = "23015524";//消息接收者appKey

Intent intent = mIMKit.getChattingActivityIntent(target, appkey);

startActivity(intent);

打开客服聊天窗口(Activity)

1

2

3

4

5

6

7

//userid是客服帐号,第一个参数是客服帐号,第二个是组ID,如果没有,传0

EServiceContact contact = newEServiceContact("userid",0);

//如果需要发给指定的客服帐号,不需要Server进行分流(默认Server会分流),请调用EServiceContact对象

//的setNeedByPass方法,参数为false。

//contact.setNeedByPass(false);

Intent intent = mIMKit.getChattingActivityIntent(contact);

startActivity(intent);

其它更多的打开窗口方式

请注意:

Step 1:如果想集成成功,必须服务端集成且提供给客户端IM账号密码,

否则,就会出现点击发送按钮无效果的坑,

Step 2: userid不是千牛登录账号,而是千牛设置的账户号

相关阅读

MPAndroidChart3使用详解5:PieChart(饼状图)

1 方法总览 1.1 百分值角度 返回类型 方法 描述 void setUsePercentValues(boole

Android手机之间实现屏幕共享

已经实现,优化空间还很大。 效果Gif 原理: 方法一:A手机不停的调用系统截图,将得到的数据压缩后不停的Socket发送至服务器,服务器

史上最全的安卓修炼之路Android开发视频教程安卓软件

获取地址:http://programmer.ischoolbar.com/index.php/article/article/id/92.html

Android自定义View(三、深入解析控件测量onMeasure)

本文出自:【openXu的博客】  在上一篇博客中我们比较深入的探讨了自定义属性。首先,我们把自定义View的步骤搬上来,一切按套路干

2018年6月份Android上海找工作经历

前言 首先介绍一下我的经历: 本人 14 年毕业,在学校里面自学 Android 开发,在 cz 呆了三年,小城市,IT 不发达,倒闭了 2 家公司,然后杭州

分享到:

栏目导航

推荐阅读

热门阅读