首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ios中检测传入的Facetime呼叫

在ios中检测传入的Facetime呼叫
EN

Stack Overflow用户
提问于 2014-09-08 10:58:55
回答 1查看 987关注 0票数 2

是否在ios中检测到传入的Facetime呼叫。我试过CTCallCenter,但似乎它只适用于蜂窝电话,而不适用于facetime电话。我使用下面的代码来检测facetime调用,但没有成功。

代码语言:javascript
复制
 self.callCenter = [[CTCallCenter alloc] init];
 self.callCenter.callEventHandler = ^(CTCall* myCall) {
    NSString *call = myCall.callState;
    if ([call isEqualToString:CTCallStateDisconnected])
        NSLog(@"Call has been disconnected");
    else if([call isEqualToString:CTCallStateDialing])
        NSLog(@"Call start");
    else if ([call isEqualToString:CTCallStateConnected])
        NSLog(@"Call has just been connected");
    else if([call isEqualToString:CTCallStateIncoming])
        NSLog(@"Call is incoming");
    else
        NSLog(@"None");
};

有什么帮助吗?

EN

回答 1

Stack Overflow用户

发布于 2014-09-08 12:03:37

您不需要对每个需要暂停播放的应用程序进行特定的检测。您应该使用AVAudioSession来检测任何类型的音频中断,并通知您的音乐播放器暂停。

请参阅苹果文档中的图片和说明:

AVAudioSession让你控制你的应用程序的音频行为。您可以:

  • 为您的应用程序选择适当的输入和输出路径
  • 确定您的应用程序如何集成其他应用程序的音频。
  • 处理来自其他应用程序的中断
  • 自动为您正在创建的应用程序类型配置音频

因此,您可以使用AVAudioSession API来处理任何可能是蜂窝电话或FaceTime呼叫,甚至任何第三方如Viber、Tango、Line等的来电。

您还可以查看AddMusic示例应用程序以查看它是如何实现的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25722716

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档