<commit_before>---
categories:
  - Uncategoried
tags:
  - Android
  - 融云
  - IM
  - 即时通讯
comment: 
info: 
date: '2017-11-14'
type: post
layout: post
published: true
sha: e3c22b671e14fa6833b0f797e88be0301e677c1d
slug: the-post-1772
title: 融云使用笔记

---
# 布局ui

`rc_item_message.xml`  融云消息item

圆形头像 app:RCCornerRadius="45dp" 圆角的话修改这个度数

`rc_fr_messagelist.xml`  聊天室消息列表布局

`rc_fr_conversation.xml ` 聊天界面布局, 

做聊天背景替换可以把这两个布局背景色改为透明,然后再自己的布局中修改背景图片来实现

`rc_ext_input_edit_text.xml` 聊天界面底部输入框和发送按钮

`rc_ext_voice_input.xml` 聊天界面底部发送语音消息按钮

`rc_ext_extension_bar.xml `聊天底部工具条 语音切换,加号在这个布局中

`rc_an_voice_receive.xml` 接收到的语音消息播放动画

`rc_an_voice_sent.xml` 发送的语音消息播放动画


# 功能

1. 聊天界面获取id 标题等信息

```java
 Uri uri = getIntent().getData();
//标题
uri.getQueryParameter("title"); 
//会话id(聊天的话是那个人的id, 群组的话就是群组会话id)
uri.getQueryParameter("targetId");
//判断会话消息是否为群组(用于会话界面用同一个界面的情况)
isGroup="/conversation/group".equals(uri.getPath());
```
2. 聊天消息长按动作选项扩展

默认是只有,复制消息和删除消息两个选项,

注意这个方法在应用初始化时调用一次就行了,不然会出来多个

```java
 MessageItemLongClickAction actionListener = new MessageItemLongClickAction.Builder().title("收藏消息").actionListener(new MessageItemLongClickAction.MessageItemLongClickListener() {
            @Override
            public boolean onMessageItemLongClick(Context context, UIMessage uiMessage) {
                EventBus.getDefault().post(DefaultEvent.createEvent(Const.EVENT_COLLECT,uiMessage));
//                UIUtils.shortM("收藏消息");
                return true;
            }
        }).build();<commit_msg>update from Jekyller<commit_after>---
categories:
  - Uncategoried
tags:
  - Android
  - 融云
  - IM
  - 即时通讯
comment: 
info: 
date: '2017-11-14'
type: post
layout: post
published: true
sha: 4ee171b7508b1dc9eba32245dd39abce0d8d62f6
slug: the-post-1772
title: 融云使用笔记

---
# 布局ui

`rc_item_message.xml`  融云消息item

圆形头像 app:RCCornerRadius="45dp" 圆角的话修改这个度数

`rc_fr_messagelist.xml`  聊天室消息列表布局

`rc_fr_conversation.xml ` 聊天界面布局, 

做聊天背景替换可以把这两个布局背景色改为透明,然后再自己的布局中修改背景图片来实现

`rc_ext_input_edit_text.xml` 聊天界面底部输入框和发送按钮

`rc_ext_voice_input.xml` 聊天界面底部发送语音消息按钮

`rc_ext_extension_bar.xml `聊天底部工具条 语音切换,加号在这个布局中

`rc_an_voice_receive.xml` 接收到的语音消息播放动画

`rc_an_voice_sent.xml` 发送的语音消息播放动画


# 功能

1.聊天界面获取id 标题等信息

```java
 Uri uri = getIntent().getData();
//标题
uri.getQueryParameter("title"); 
//会话id(聊天的话是那个人的id, 群组的话就是群组会话id)
uri.getQueryParameter("targetId");
//判断会话消息是否为群组(用于会话界面用同一个界面的情况)
isGroup="/conversation/group".equals(uri.getPath());
```

2.聊天消息长按动作选项扩展

默认是只有,复制消息和删除消息两个选项,

注意这个方法在应用初始化时调用一次就行了,不然会出来多个

```java
 MessageItemLongClickAction actionListener = new MessageItemLongClickAction.Builder().title("收藏消息").actionListener(new MessageItemLongClickAction.MessageItemLongClickListener() {
            @Override
            public boolean onMessageItemLongClick(Context context, UIMessage uiMessage) {
                EventBus.getDefault().post(DefaultEvent.createEvent(Const.EVENT_COLLECT,uiMessage));
//                UIUtils.shortM("收藏消息");
                return true;
            }
        }).build();
{'fraction_non_alphanumeric': 0.1111111111111111, 'fraction_numerical': 0.026455026455026454, 'mean_word_length': 4.480072463768116, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 16}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1765653', 'n_tokens_mistral': 1526, 'n_tokens_neox': 1727, 'n_words': 165}