融雲IM使用小結---Android
阿新 • • 發佈:2018-12-21
首先按照融雲官方文件,接入SDK,基於IMKit,具體接入就不多廢話啦啦… 此時AndroidManifest.xml在遇到第一個問題點: 1、android.support.v4.content.FileProvider衝突
<provider android:name="android.support.v4.content.FileProvider" android:authorities="您的應用包名.FileProvider" android:exported="false" android:grantUriPermissions="true"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/rc_file_path" /> </provider>
解決方案:
- 重寫FileProvider檔案
package com.android.chat; import
android.support.v4.content.FileProvider;
public class ChatFileProvider extends FileProvider {
}
- AndroidManifest.xml註冊
<provider android:name=".chat.ChatFileProvider" android:authorities="com.droi.mjpet.FileProvider" android:exported="false" android:grantUriPermissions="true"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/rc_file_path" /> </provider>
2、最近聊天列表頭像設定為圓形 rc_item_conversation.xml rc_item_message.xml
查詢AsyncImageView,修改屬性 app:RCShape=“circle”
3、修改聊天介面訊息背景框 android/IMKit/src/main/res/drawable-xhdpi/
4、設定自己的資訊 RongIM.getInstance().setCurrentUserInfo(new UserInfo(userId, userNickName, Uri.parse(userPortraitUri))); 5、設定好友資訊列表
- 實現RongIM.UserInfoProvider介面
@Override public UserInfo
getUserInfo(String s) {
itemMap = MJ_PetUtils.queryAllData(mContext);
PetItem item = itemMap.get(s);
if(item != null) {
return new UserInfo(item.getId(), item.getPetName(), Uri.parse(item.getPic()));
}
return null; }
- 設定監聽,具體可參照官方Demo
RongIM.setUserInfoProvider(this, true);
6、未讀訊息數