实用的即时通讯(IM)

快速集成

一. 获取AppKey

申请MobSDK的appkey流程(见官网)

二. 配置gradle

1、将下面的脚本添加到您的根模块build.gradle中:

```

buildscript {

    // 添加MobSDK的maven地址

    repositories {

        maven {

            url "http://mvn.mob.com/android"

        }

    }

 

    dependencies {

        // 注册MobSDK

        classpath 'com.mob.sdk:MobSDK:+'

    }

}

```  

2、在使用MobIM模块的build.gradle中,添加MobSDK插件和扩展,如:

```


// 添加插件

apply plugin: 'com.mob.sdk'

 

// 在MobSDK的扩展中注册MobIM的相关信息

MobSDK {

    appKey "d580ad56b***"

    appSecret "7fcae59a62342e7e2759e9e397c82***"

 

    MobIM {}

}

```

三. 添加代码

1、初始化MobIM

如果您没有在AndroidManifest中设置appliaction的类名,MobSDK会将这个设置为com.mob.MobApplication,但如果您设置了,请在您自己的Application类中调用:

```

MobSDK.init(this);

```

以初始化MobSDK。

2、调用API

在应用启动后,用户自己的用户登录系统登录成功后调用如下api,设置用户到MobIM即可。

登录成功后,设置用户信息(IM会使用此用户进行通讯)

```

MobSDK.setUser("用户ID", "用户昵称","用户头像地址", null);

```

在需要监听消息回调的地方,调用如下api,设置消息监听

```

MobIM.addMessageReceiver(MobIMMessageReceiver mobMsgRever);

```

在IM程序时,调用移除监听消息接口:

```

MobIM.removeMessageReceiver(MobIMMessageReceiver mobMsgRever);

```

注:MobIMMessageReceiver是处理收到消息的回调接口,根据获取的消息进行处理,接口实现如下:

```

public interface MobIMMessageReceiver {

    void onMessageReceived(List<IMMessage> messageList);

}

```

获取会话列表

```

MobIM.getChatManager().getAllLocalConversations(MobIMCallback<List<IMConversation>> conversations)

```

发送消息

```

MobIM.getChatManager().sendMessage(msg, new MobIMCallback<Void>() {

    public void onSuccess(Void result)  {

        // TODO 处理消息发送成功的结果

    }

    public void onError(int code, String message)  {

        // TODO 根据错误码(code)处理错误返回

    }

});

```

备注:

MobIM并不自带用户系统(没有登录与注册操作,需要用户有自己的),用户成功登陆您自有用户系统后,开发者可对接登录MobIM中相对应的用户。

## MOBIMCallback

 

MOBIMCallback是MOBIM所有异步操作的结果回调,包含下面2个方法:


备注:MOBIM并不自带用户系统(没有登录与注册操作,需要用户有自己的),用户成功登陆您自有用户系统后,开发者可对接登录MOBIM中相对应的用户。本演示DEMO直接使用设备ID作为已登录成功的标识

四、 混淆设置

MobIM已经做了混淆处理,再次混淆会导致不可预期的错误,请在您的混淆脚本中添加如下的配置,跳过对MobIM的混淆操作:

```

-keep class com.mob.**{*;}

-dontwarn com.mob.**

```

五、注意事项

1. MobSDK默认为MobIM提供最新版本的集成,如果您想锁定某个版本,可以在MobIM下设置“version “某个版本””来固定使用这个版本

2. 如果使用MobSDK的模块会被其它模块依赖,请确保依赖它的模块也引入MobSDK插件,或在此模块的gradle中添加:

```

repositories {

    jcenter()

}

```

可参考Sample的github开源地址:

https://github.com/MobClub/MobIM-for-Android


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值