Android SDK接入文档#

添加SDK依赖#

假设Android Studio的主module为app

修改顶级build.gradle,添加待客的repository,令其看起来是这样:

allprojects {
    repositories {
        jcenter()
        maven {
            url "https://jcenter.daikeapp.com/artifactory/daike-sdk"
        }
    }
}

其中

maven {
    url "https://jcenter.daikeapp.com/artifactory/daike-sdk"
}

是需要添加的部分

修改appdependencies,增加:

compile 'com.daikeapp.support:daike-android:1.6.6'

因为我们使用Android Support Library,所以还需要增加对应依赖:

compile 'com.android.support:appcompat-v7:24.2.0'
compile 'com.android.support:recyclerview-v7:24.2.0'

support library的版本请不要低于23.4.0

SDK的初始化与使用#

在应用的Application.onCreate中,调用初始化函数:

Support.initialize(this, token, secret, appId)

其中,tokensecretappId可以通过网站后台获取,请务必保证在Application的onCreate中调用该方法,避免运行过程中出现运行时错误

完成初始化后,就可以在应用的任意Activity中通过调用:

Support.startFAQs(this)

唤起待客的界面,为用户提供客服服务了

API定义#

Support.initialize(Application application, String token, String secret, String appId)

SDK初始化接口


Support.registerNewMessageCallback(Support.NewMessageListener listener)

这个接口允许应用注册一个回调,当有服务器发来的聊天消息时,通知应用最新的消息内容和全部的未读数,NewMessageListener的定义如下:

public interface NewMessageListener {
    void onMessageReceived(Message message, int unreadCount);
}

应用可以通过Message得到消息的具体内容:

public static class Message {
    public String getText() {}
    public String getTimestamp() {}
}

timestamp为UTC时间的unix时间戳字符串,如1476770460.533


Support.unreadMessageCount()

返回所有的未读消息数给应用


Support.unreadMessages()

返回所有的未读消息的List,消息格式为Message


Support.login(String id, String name, String email)

应用注册当前用户,id为用户在应用中的用户id,后两个参数可以为空


Support.startFAQs(Activity activity)

启动SDK的界面


Support.startConversation(Activity activity)

直接启动聊天界面,如果没有正在处理的工单,会先启动创建工单界面


Support.setProperties(Properties properties)

应用可以为当前用户设置一组自定义的属性,Properties的定义如下:

public static class Properties {
    public void put(String key, String value) {}
    public void put(String key, int value) {}
    public void put(String key, float value) {}
    public void remove(String key) {}
}

更新历史#

请查看release notes