禁用Callkitbutton

是否可以禁用CallKitbutton。 像下面的图像 –

在这里输入图像说明

我想禁用keypad mute等button,这意味着触摸不会在这个button上工作。 我怎样才能做到这一点。 我已经通过其他教程,但我很困惑。

您不能禁用静音或扬声器button,因为这将提供一个破碎的audio体验。 但是,您可以控制其他一些button。 您将需要使用CXCallUpdate对象来configuration您的呼叫。 例如,这个CXCallUpdate产生以下呼叫屏幕,当来电连接(出站相同的作品):

 CXCallUpdate* callUpdate = [CXCallUpdate new]; callUpdate.supportsDTMF = YES; callUpdate.hasVideo = NO; callUpdate.supportsGrouping = NO; callUpdate.supportsUngrouping = NO; callUpdate.supportsHolding = NO; [self.provider reportNewIncomingCallWithUUID:callId update:callUpdate completion:^(NSError * _Nullable error) {}]; 

活动Callkit示例禁用控件的调用

至less在iOS 10中,您无法禁用它。

但是,如果你想要那些button不起作用,你可以忽略你的应用程序的通知,什么也不做。

如果你想在将来做任何事,当用户按下这些button,你必须覆盖下面的function:

 - (void)provider:(CXProvider *)provider performSetHeldCallAction:(CXSetHeldCallAction *)action; - (void)provider:(CXProvider *)provider performSetMutedCallAction:(CXSetMutedCallAction *)action; - (void)provider:(CXProvider *)provider performSetGroupCallAction:(CXSetGroupCallAction *)action; - (void)provider:(CXProvider *)provider performPlayDTMFCallAction:(CXPlayDTMFCallAction *)action;