用户工具

im_ios_sdk指南

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
im_ios_sdk指南 [2016/03/17 04:37]
tangbing [3.4、消息操作]
im_ios_sdk指南 [2016/03/17 07:19]
tangbing [1.2、制作并上传APNS推送证书]
行 8: 行 8:
 ==== 1.2、制作并上传APNS推送证书 ===== ==== 1.2、制作并上传APNS推送证书 =====
  
-如果你的App不需要离线推送功能,可以跳过这一步。(为更好的用户体验,我们建议使用离线推送)+如果你的App不需要离线推送功能,可以跳过这一步。(为更好的用户体验,我们建议使用离线推送)
  
 Push的工作机制可以简单的概括为下图: Push的工作机制可以简单的概括为下图:
行 672: 行 672:
 }]; }];
 </​code>​ </​code>​
-5) 获取最近的聊天消息+ 
 +5) 发送自定义消息 
 + 
 +**云之讯IMDEMO参考代码:​** 
 +<code java> 
 +// base64加密这段文字,GTMBase64是一个开源加密库,开发者可以选择任意加密方式。 
 +NSString *text = @"​开发者可以根据自己的需求,将图片、语音、文本等数据加密成NSData类型的数据,​构建自定义消息。云之讯SDK只负责传输这条消息,加密、解密的过程完全由开发者完成。"​ 
 +NSString * base64Str = [GTMBase64 encodeBase64String:​text];​ 
 +NSData * data = [base64Str dataUsingEncoding:​NSUTF8StringEncoding];​ 
 +     
 +//​构建自定义消息 
 +UCSCustomMsg * customMsg = [[UCSCustomMsg alloc] initWithData:​data];​ 
 +[[UCSIMClient sharedIM] sendMessage:<#​(UCS_IM_ConversationType)#>​ receiveId:<#​(NSString *)#> msgType:​UCS_IM_Custom content:​customMsg success:​^(long long messageId) { 
 +     //​success,​ do somethings 
 +} failure:​^(UCSError *error, long long messageId) { 
 +    //failed, do somethings 
 +}] 
 +</​code>​ 
 + 
 +6) 获取最近的聊天消息
  
 使用场景:当我们进入一个会话的时候,我们希望将最近的聊天记录展示出来,方便用户查看。如果这个会话的聊天信息很多,该接口的最后一个参数可以控制获取最近消息的数量。 使用场景:当我们进入一个会话的时候,我们希望将最近的聊天记录展示出来,方便用户查看。如果这个会话的聊天信息很多,该接口的最后一个参数可以控制获取最近消息的数量。
行 692: 行 711:
 NSArray * messages = [[UCSIMClient sharedIM] getLatestMessages:​_chatType targetId:​_chatter count:10]; NSArray * messages = [[UCSIMClient sharedIM] getLatestMessages:​_chatType targetId:​_chatter count:10];
 </​code>​ </​code>​
-6) 获取更多的聊天信息+7) 获取更多的聊天信息
  
 当一个会话的聊天信息很多,我们需要看更早的信息时,可以调用下面这个方法拉取更多的聊天消息。即获取历史消息。数组内的第一个元素为时间最早的聊天消息。 当一个会话的聊天信息很多,我们需要看更早的信息时,可以调用下面这个方法拉取更多的聊天消息。即获取历史消息。数组内的第一个元素为时间最早的聊天消息。
行 716: 行 735:
 NSArray * oldMessages = [[UCSIMClient sharedIM] getHistoryMessages:​_chatType targetId:​_chatter oldestMessageId:​oldestMessageId count:10]; NSArray * oldMessages = [[UCSIMClient sharedIM] getHistoryMessages:​_chatType targetId:​_chatter oldestMessageId:​oldestMessageId count:10];
 </​code>​ </​code>​
-7) 删除一个会话的所有聊天记录+8) 删除一个会话的所有聊天记录
 <code java> <code java>
 /*! /*!
行 734: 行 753:
 [[UCSIMClient sharedIM] deleteMessages:​_chatType targetId:​_chatter messageId:​model.messageId];​ [[UCSIMClient sharedIM] deleteMessages:​_chatType targetId:​_chatter messageId:​model.messageId];​
 </​code>​ </​code>​
-8) 设置接收到的某条消息在本地的接收状态(用于判断语音消息是否已读)+9) 设置接收到的某条消息在本地的接收状态(用于判断语音消息是否已读)
  
 用于判断语音消息是否已读。当收到语音消息时,你可能需要提醒用户点击收听语音。用户听完后,需要在UI上告诉用户这条语音已经听过了,不需要重复收听。UCSMessage提供了receivedStatus属性来标识消息的接收状态。receivedStatus的类型是一个枚举类型。 用于判断语音消息是否已读。当收到语音消息时,你可能需要提醒用户点击收听语音。用户听完后,需要在UI上告诉用户这条语音已经听过了,不需要重复收听。UCSMessage提供了receivedStatus属性来标识消息的接收状态。receivedStatus的类型是一个枚举类型。

页面工具