IM 即时通讯 (442)
Android (209)
- 初始化&链接 (8)
- 事件&监听处理 (7)
- 用户信息 (13)
- 会话列表 (16)
- 聊天会话 (26)
- 消息处理 (35)
- 自定义消息 (6)
- 音视频 (2)
- 推送&通知 (34)
- 扩展功能 (4)
- 第三方地图 (3)
- 依赖&配置 (9)
- 升级说明 (3)
- 其他 (43)
iOS (168)
- SDK 导入 (10)
- 连接 (8)
- 事件处理 (2)
- 用户信息 (3)
- 会话列表 (14)
- 聊天会话 (44)
- 消息处理 (26)
- 自定义消息 (8)
- 推送&通知 (19)
- 扩展功能 (5)
- 国际化 (4)
- 音视频 (3)
- 其他 (22)
Web (36)
Server (29)
关于RCImageMessage中imageUrl是本地路径还是远端路径问题
在SDK2.8.13之前,RCImageMessage中的imageUrl字段保存的路径,在发送发是本地路径,在接收方是远端路径,在2.8.13之后,如果发送完图片之后停留在当前界面,imageUrl还是本地路径,当离开或者重启之后就是远端url了,也可通过如下方法获取远端URL。
发布时间: 2017-06-30 15:40
回答:
默认情况下,发送方,发送一个图片,当发送完毕的时候,融云会将图片存放到服务器上面,然后返回一个图片的URL地址存放到数据库里面,但是如果用户使用IMKit,比如在
- (void)didTapMessageCell:(RCMessageModel *)model
这个方法里面打一个断点,会发现model.content属性的imageURL是本地的缩略图URL,而不是远端的URL,要想得到远端的URL,在得到这个model之后,里面有个属性model.messageUid,或者model.messageId,获取这条消息的ID或者全局ID,然后通过SDK的接口
[[RCIMClient sharedRCIMClient] getMessageByUId:<#(NSString *)#>];
或者
- (RCMessage *)getMessage:(long)messageId;
就可以得到一个RCMessage对象,得到的这个对象就是最新的,然后这个时候就再得到imageUrl属性,就不是本地的url了,就是远端的url了