1.官網
1.表情云 iOS API (BQMM 表情包)
2. 界面展示
3.本文適配 對應 版本 (2018.1.22)
1.表情云 :V2.0.0 (2017.12.27)
2.環(huán)信:3.3.7 (2017.11.30)
注意 :
1.本次 適配 的環(huán)信版本( 3.3.7 ) 與 表情云官網 下載的demo中表情云的 版本( 3.1.4 )不同
2.不要使用 cocoaspod 導入 BQMM 因為那樣下載的對應類庫 會與 表情云- 環(huán)信demo 的文件不一致,缺少 MMGifManager.h
文件等...,所以 本文 選擇 手動 導入BQMM
具體操作 參考 http://open.biaoqingmm.com/doc/sdk/content/ios/implement_manual/
4.適配中注意點
1.打開demo 全局 搜索 //BQMM集成
(由于 本人項目 不需要 ContactListSelectViewController.h
文件 所以不做操作),剩下的就是對 搜索的文件 與 自己配置好的環(huán)信項目進行配置
2.#import "EaseMessageViewController.m"
文件 針對于 環(huán)信 3.3.7 需要添加(3.1.4版本 不需要添加如下方法)
2.1
//BQMM集成 -- 自己
- (void)_sendMessage:(EMMessage *)message
{
if (self.conversation.type == EMConversationTypeGroupChat){
message.chatType = EMChatTypeGroupChat;
}
else if (self.conversation.type == EMConversationTypeChatRoom){
message.chatType = EMChatTypeChatRoom;
}
[self addMessageToDataSource:message
progress:nil];
__weak typeof(self) weakself = self;
[[EMClient sharedClient].chatManager sendMessage:message progress:nil completion:^(EMMessage *aMessage, EMError *aError) {
if (!aError) {
[weakself _refreshAfterSentMessage:aMessage];
}
else {
[weakself.tableView reloadData];
}
}];
}
原因: 3.3.7 新增了如下 方法
- (void)_sendMessage:(EMMessage *)message isNeedUploadFile:(BOOL)isUploadFile
2.2
3.添加 新文件 EaseBubbleView +MMText.h
時候 需要 引入 如下2個文件
-
EaseChatToolbar.h
文件
4.1.針對于 3.3.7 需要在.h 導入 如下方法
//BQMM集成 -- 自己
- (void)didSendTextMessageWithTextView:(UITextView *)textView;
原因 3.3.7 中省去 上面的方法
4.2. EaseChatToolbar.m
5.#import "EaseCustomMessageCell.m"
//BQMM集成 方法中 針對于 sd_setImageWithURL:...的方法
- (void)setCustomModel:(id<IMessageModel>)model{
.......
}
原因 是環(huán)信 重寫了 SD的一些方法,報錯
下圖為 表情云demo 的代碼(錯誤) 上圖為更正后的 代碼