一、融云库的基本分类
融云 SDK 包括两部分:IM 界面组件和 IM 通讯能力库。
下载链接:http://www.rongcloud.cn/download
1、IM 界面组件 - IMKit
IM组件融云提供了2个库,如图:
初次使用下载IMKit库即可
2、IM 通讯能力库 - IMLib
该库是融云库进阶学习,后面文章在做更新。
二、融云库使用涉及到的一些概念
- Token
官方说法:Token 即用户令牌,相当于您APP上当前用户连接融云的身份凭证。每个用户连接服务器都需要一个 Token,用户更换即需要更换 Token。每次初始化连接服务器时,都需要向服务器提交 Token。
Token:实际相当于一个用于链接融云App的账号,目前Android端只能通过API调试获取,API获取Token链接,网络协议获取Token目前只有PHP实例。 - App Key / Secret
App Key / Secret 相当于您的 App 在融云的账号和密码。是融云 SDK 连接服务器所必需的标识,每一个 App 对应一套 App Key / Secret。(这两东西官方会直接生成,我们Android用到的只有App Key).
三、导入并配置融云库
- 环境要求:
1、JDK 1.7 以上(编译版本)。
2、Support-v4-21 以上。
3、Android SDK Build-tools 22以上版本。翻墙软件用于更新sdk - 将融云导入项目:
操作步骤:
- 在 Eclipse 中打开 “file” 菜单选择 “Import” 选项,打开如下 “Import”对话框。
- 关联融云库
先将融云库设置为外部库如图:
右击你的项目选择 “Properties”, 打开 “Properties” 对话框,在 “Library” 选项卡上选择 “Add…” 按钮,打开 “Project Selection” 对话框,选择 “RongIMKit” 项目,点击 “OK”,然后再点击 “Properties for MyApp” 对话框的 “OK” 按钮,完成 “RongIMKit” 库导入。成功后如图:
注意:如果关联库后,融云库显示一把红叉,有2中可能
第一:项目和融云库不在同一个目录下
第二:融云库导入一次后生成RemoteSystemsTempFiles文件夹,删除后从新导*入即可*
- 复制AndroidManifest.xml内容
使用Eclipse新建项目务必使用此包名 package=”com.IMKIT.activity”
不明白看图
复制 RongIMKit项目 下 AndroidManifest.xml 文件中的内容到你项目下的 AndroidManifest.xml 下。
- 填写Appkey
在 AndroidManifest.xml 下找到RONG_CLOUD_APP_KEY 对应的 meta-data, 填写上自己的appkey ,如下图所示。
- 填写Appkey
四、简单的实现融云库中的部分功能
- 在你的 Application 子类的onCreate方法中加入 RongIM.init(getApplicationContext()); 如下图所示。
- 添加会话列表:新建ConversationListActivity 类并继承 FragmentActivity,新建 ConversationListActivity的xml文件conversation_list.xml,并在conversation_list.xml 中添加融云会话列表ConversationListFragment,如下图所示。
添加布局文件
注册会话列表Activity
会话列表是这样的
- 添加会话界面:新建 ConversationActivity 类并继承 FragmentActivity,新建 ConversationActivity的xml 文件 conversation.xml,并在 conversation.xml 中添加融云会话页面 ConversationFragment,如下图所示。
会话界面Activity
会话界面布局
注册会话界面
会话界面是这样的
4.**连接服务器,与打开界面**MainActivity 中的 activity_main.xml 增加三个按钮,分别是“连接融云服务器”、“启动列表会话页面”、“启动会话页面”,代码逻辑如下图,切记在 connect 的 onSuccess() 方法执行后才能调用另外两个接口。
布局文件
相关Activity
正确的获取token
- 添加会话界面:新建 ConversationActivity 类并继承 FragmentActivity,新建 ConversationActivity的xml 文件 conversation.xml,并在 conversation.xml 中添加融云会话页面 ConversationFragment,如下图所示。