im即时通讯:android:android_sdk_基础功能

Android SDK 基础功能

同步方法:SDK 里大部分方法都为同步方法,即这个方法执行完毕,才会走后面的代码。

异步方法:带有 callback即不需要等这个方法走完,后边的代码就已经在执行了,通过 callback 得到方法执行的结果。

需要开发者手动去手机sdcard中创建文件夹diting/log.txt,获取本地log

adb pull sdcard/diting/log.txt

要求在 application 的oncreate方法中做初始化,初始化的时候需要传入设置好的 options

同步方法

   DTOptions options = new DTOptions();
        //官方申请的appID
        options.setAppId("diting");
        //是否开启debug模式
        options.Debug(true);
        //是否允许自动登录
        options.setAutoLogin(true);
        //初始化
        DTClient.getInstance().init(applicationContext, options);
      

异步方法

可以根据 DefinedException 返回的 error 判断原因。

若服务器返回的参数值为 USER_NAME_HAS_BEEN_REGISTERED,用户名已存在;

若服务器返回的参数值为 LINE_OFF_AND_RECONNECTION,网络连接错误;

若服务器返回的参数值为 USER_ILLEGAL_ARGUMENT,用户名或密码格式错误。

若服务器返回的参数值为 TIME_OUT,请求超时。

DTClient.getInstance().createAccount(username, password, nickname, new DTRegisterListener() {
            @Override
            public void state(boolean success, DefinedException e) {
               //注册成功
                if (success) {
                   
                }else {
                   
            }
        });

注意: 除了注册监听,其他的 SDK 操作均需在登陆之后才能进行。

异步方法

DTClient.getInstance().login(username,password  new DTCallBack() {
                        @Override
                        public void onSuccess() {

                        }

                        @Override
                        public void onProgress(int progress) {

                        }

                        @Override
                        public void onError(DefinedException e) {

                        }
                    });

异步方法

 DTClient.getInstance().logout(true, DTCallBack() {
                        @Override
                        public void onSuccess() {
      
                        }

                        @Override
                        public void onProgress(int progress) {

                        }

                        @Override
                        public void onError(DefinedException e) {
                           //退出登录异常
                        }
                    });

异步方法

当掉线时,Android SDK 会自动重连,无需进行任何操作,通过注册连接监听来知道连接状态。

在聊天过程中难免会遇到网络问题,在此 SDK 为您提供了网络监听接口,实时监听可以根据 disconnect 返回的 error 判断原因。

若服务器返回的参数值为 OFF_LINE_BE_KICKED_BY_OTHER,则认为是有同一个账号异地登录;

若服务器返回的参数值为 OFF_LINE_BE_KICKED_BY_SERVER,则是账号在后台被删除。

被踢下线之后需要调用logout退出登录,之后才能进行重新登录。

 DTClient.getInstance().addConnectionListener(new DTConnectionListener() {
            @Override
            public void onConnected() {
            //登录成功的回调

            }

            @Override
            public void onDisConnected(DefinedException e) {

            }
        });
  • im即时通讯/android/android_sdk_基础功能.txt
  • 最后更改: 2019/07/08 12:45
  • (外部编辑)