android 融云sdk集成,使用融云SDK集成

使用融云开始还是遇到了很多的坑的,特别是看不太明白官方文档。或许自己不够有耐心。

期间还遇到了许多bug,比如,明明配置的没问题了,可我的手机还是连不上融云。

后来还是在融云的知识库中找到了解决办法,总之是一波三折。

1 下载SDK

融云SDK下载页面截图

有IMKit SDK和IMLib SDK可以下载。其中IMKit是带一些组件的,像会话页面等可以直接使用。如果想重新定制界面便选择IMLib SDK即可。

为了方便快速使用,最后我还是选择了下载IMKit

在下载下来的压缩包解压后如下

解压后的文件目录

2 在Android Studio中导入

最开始的时候,我按照一些教程,直接在Android Studio里面Import Module,之后出现了一些问题,首先是IMkit里面的build.gradle依赖了compile project (':IMLib'),其次我没有找到写RONG_CLOUD_APP_KEY的地方。

解决方法

方法一

可以将IMLib文件夹下libs中的Rong_IMLib.jar添加到你项目中的libs中

然后将IMLib文件夹下的AndroidManifest.xml中的内容全部写入你自己项目中的AndroidManifest.xml中,我们可以看到该AndroidManifest.xml里面是有

android:name="RONG_CLOUD_APP_KEY"

android:value="此处添加APP_KEY" />

IMLib文件夹下libs

方法二

该方法我觉得更好些,也更容易理解,也更不容易出错。当时查看官网的知识库得知。

融云知识库

所以,方法二就是按这个说法。

首先在Android studio中Import Module IMLib

再Impor Module IMKit

3 基础配置

在完成上述的导入操作后,还需进行以下操作。

此时你的项目只是导入了IMLib和IMKit,其中IMKit已经依赖了IMLib,因为IMKit中的build.gradle已经compile project(':IMLib')对其依赖了,而你的项目并没有对IMKit进行依赖。同理,只需要你在自己项目中的build.gradle对IMKit进行依赖即可,compile project (':IMKit')。

在IMLib中找到AndroidManifest.xml,在

android:name="RONG_CLOUD_APP_KEY"

android:value="你的App Key" />

value中写入你的融云App Key即可。

在IMKit中找到AndroidManifest.xml,在最下面有一块注释的地方

按照此说法,写入你的项目的AndroidManifest.xml中,并打开注释,将包名改成自己的包名即可。

按照上述操作下去,基本是不会有问题的。

4 关键,看看能不能连上融云咯

融云Android SDK开发文档

注:如果有App类则在项目的AndroidManifest.xml中的

RongIM.init(this);即进行了初始化操作,为了方便测试,连接操作我直接也写在了App类中。

//融云初始化

RongIM.init(this);

//登录成功后需要用到的

String token="**********************************";

RongIM.connect(token, new RongIMClient.ConnectCallback() {

@Override

public void onTokenIncorrect() {

Toast.makeText(App.this, "onTokenIncorrect", Toast.LENGTH_SHORT).show();

}

@Override

public void onSuccess(String s) {

Toast.makeText(App.this, "onSuccess-用户名:"+s, Toast.LENGTH_SHORT).show();

}

@Override

public void onError(RongIMClient.ErrorCode errorCode) {

Toast.makeText(App.this, "onError", Toast.LENGTH_SHORT).show();

}

});

就这样,我们编译运行后就可以根据吐司的信息看到能不能连上了。

5 Android7.0连不上?怎么一点点吐司信息都没有!!

这个问题折腾了我很久,因为配置这玩意当时看各种文档,走马观花的,以为是配置没配好,后来还是在融云知识库中找到为何了。

融云知识库

我用了第二种方法,libsqlite.so下载地址

解压该文件后,将里面的文件夹(所有文件,为适配各个不同架构的手机)放入你项目的libs中,

同时,在build.gradle中的android下加

sourceSets {

main {

jniLibs.srcDirs = ['libs']

}

}

即可。

注:官网SDK集成的里面还要添加libpush.so

融云SDK集成

这一步应该也是需要有的,和上面加libsqlite.so是一样的

以上便是使用融云SDK集成的所有步骤,终于写完了。。。

你可能感兴趣的:(android,融云sdk集成)