[英]After Unhold GSM Call, Callkit become a Mute and I cannot hear any sound
我查了很多类似的问题,但没有任何答案......
我正在使用 Callkit,它工作正常。 但问题是当 GSM 呼叫到达并且我的 VOIP 呼叫保持呼叫然后当我单击切换 Callkit 的按钮取消保持我的呼叫 unHold 请求发送正确但问题是声音在 Callkit 中变得有点静音并且没有-一个什么都听不到。。
- (void)provider:(CXProvider *)provider performSetHeldCallAction:(CXSetHeldCallAction *)action {
if (action.isOnHold) {
NSLog(@"Call on hold");
} else {
[self holdCall:NO];
}
[action fulfill];
}
- (void)holdCall:(BOOL)hold {
NSLog(@"What is current call uuid %@",self.currentCallUUID);
CXSetHeldCallAction *holdCallAction = [[CXSetHeldCallAction alloc] initWithCallUUID:self.currentCallUUID onHold:hold];
CXTransaction *transaction = [[CXTransaction alloc] init];
[transaction addAction:holdCallAction];
[self requestTransaction:transaction];
}
当我调用 unHold 方法时,它会进入一种无限循环......有人有同样的问题,或者我如何取消 Callkit?
谢谢
实际上,您正在生成一个无限循环:在- (void)provider:(CXProvider *)provider performSetHeldCallAction:(CXSetHeldCallAction *)action
函数中,在取消保持的情况下,您正在调用- (void)holdCall:(BOOL)hold
,反过来将生成另一个调用- (void)provider:(CXProvider *)provider performSetHeldCallAction:(CXSetHeldCallAction *)action
,依此类推。
所以,你只需要删除[self holdCall:NO];
里面- (void)provider:(CXProvider *)provider performSetHeldCallAction:(CXSetHeldCallAction *)action
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.