如何在通话后恢复iPhone应用程序

时间:2010-10-30 14:18:20

标签: ios4 iphone-sdk-4.0.1

我正在创建一个iPhone应用程序,我在其中提供了一个呼叫功能,用户可以通过该功能呼叫拨打指定号码的呼叫。我可以通过开放的URL实现上述功能。

完成通话后,我想自动恢复应用程序的执行。虽然用户可以在iOS 4.0中进行快速应用切换。但我希望这是自动完成的。

我在“TomTom”应用中看到了相同的行为,但我不确定这款应用是如何实现的。

由于

1 个答案:

答案 0 :(得分:8)

Apple不允许您在通话后恢复应用。但是你可以尝试做的是使用本地通知。

调用'call'url处理程序后,您需要启动后台任务并监视调用状态更改:

CTCallCenter *c=[[CTCallCenter alloc] init];
c.callEventHandler=^(CTCall* call){
  if(call.callState == CTCallStateDisconnected) {
    // do stuff here
  }
}

当您收到呼叫状态更改时,请创建本地通知以提醒用户恢复应用。如果用户点击“查看”,您的应用程序将转到前台。显然,如果通话时间超过10分钟,这将无效,因为Apple只允许10分钟的后台任务。