立即注册 登录
即时通讯网 返回首页

Ryun的个人空间 http://www.52im.net/?28523 [收藏] [复制] [RSS]

日志

使用 IMKit 在前台弹出通知提示音后,音视频的声音异常

已有 245 次阅读2023-09-13 14:07 |个人分类:IM知识

"现象描述:(https://www.rongcloud.cn/?utm_source=SEO)

A 用户正在前台通话或者直播, 这时收到一条消息并响起消息提示音,之后房间内其他人听不到 A 用户的声音,或者 观众收到消息后听不到主播声音。

原因:

苹果的 AudioSession 不同 Category 允许的行为不同,通话过程中需要尽量避免其他操作影响 AudioSession 的值。

解决办法:

/*! 
*  \~chinese 
当App处于前台时,接收到消息并播放提示音的回调方法 
@param message 接收到的消息 
@return        当返回值为NO时,SDK会播放默认的提示音;当返回值为YES时,SDK针对此消息不再播放提示音 
@discussion 收到消息时播放提示音之前,会执行此方法。 如果App没有实现此方法,SDK会播放默认的提示音。 
流程: 
SDK接收到消息 -> App处于前台状态 -> 回调此方法准备播放提示音 -> App实现并返回YES        -> SDK针对此消息不再播放提示音                                 
                                                     -> App未实现此方法或者返回NO -> SDK会播放默认的提示音 
您可以通过 RCKitConfigCenter.message.disableMessageAlertSound 属性,关闭所有前台消息的提示音(此时不再回调此接口)。 
*/
- (BOOL)onRCIMCustomAlertSound:(RCMessage *)message;
//设置代理给Appdelegate或者其他单例对象:

    [RCIM sharedRCIM].receiveMessageDelegate = self;
 
//实现方法:   
- (BOOL)onRCIMCustomAlertSound:(RCMessage *)message{
    if ([RCKitUtility isAudioHolding]||[RCRTCEngine sharedInstance].room) {
       return YES;    
    }else{  
       return NO;    
    }
}"

0 推荐

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

返回顶部