当我的应用程序在iPhone上处于活动状态时,我应该如何处理来电?

当我的应用程序在iPhone上处于活动状态时,我应该如何处理来电?,iphone,Iphone,当我的应用程序处于活动状态时,我应该如何处理来电?我的应用程序会终止还是暂停?你好,年轻的冒险家。你决定从事iPhone开发人员的工作将考验你,但回报是巨大的。为了回答您的问题,我需要您为我执行一系列任务。第一项任务是清理我的地下室,防止老鼠出没。你可以在酒吧旁边的窗帘后面找到地下室的门。如果你看到任何科博尔德人,你也可以杀死他们。当你有八条老鼠尾巴的时候,回来找我,索取你的报酬 要回答您的问题,这有点取决于您正在尝试做什么,但简而言之,当有来电时会调用应用程序willresignative,然

当我的应用程序处于活动状态时,我应该如何处理来电?我的应用程序会终止还是暂停?

你好,年轻的冒险家。你决定从事iPhone开发人员的工作将考验你,但回报是巨大的。为了回答您的问题,我需要您为我执行一系列任务。第一项任务是清理我的地下室,防止老鼠出没。你可以在酒吧旁边的窗帘后面找到地下室的门。如果你看到任何科博尔德人,你也可以杀死他们。当你有八条老鼠尾巴的时候,回来找我,索取你的报酬

要回答您的问题,这有点取决于您正在尝试做什么,但简而言之,当有来电时会调用
应用程序willresignative
,然后您的应用程序会被禁用<如果用户选择接听电话,将调用code>willApplicationTerminate。有关更多信息,请仔细查看


简言之,如果你的应用程序是一款游戏,那么最好尽快暂停它,以便在
ApplicationWillResignative
中满足不太重要的需求,并且
willApplicationTerminate
是你在永久关闭前保存状态的地方。

你好,年轻的冒险家。你决定从事iPhone开发人员的工作将考验你,但回报是巨大的。为了回答您的问题,我需要您为我执行一系列任务。第一项任务是清理我的地下室,防止老鼠出没。你可以在酒吧旁边的窗帘后面找到地下室的门。如果你看到任何科博尔德人,你也可以杀死他们。当你有八条老鼠尾巴的时候,回来找我,索取你的报酬

要回答您的问题,这有点取决于您正在尝试做什么,但简而言之,当有来电时会调用
应用程序willresignative
,然后您的应用程序会被禁用<如果用户选择接听电话,将调用code>willApplicationTerminate。有关更多信息,请仔细查看


简言之,如果你的应用程序是一款游戏,那么最好尽快暂停它,以便在
ApplicationWillResignative
中满足不太重要的需求,并且
willApplicationTerminate
是你在永久关闭前保存状态的地方。

我相信当接到来电时,应用程序会终止,但将在呼叫结束后重新启动。(虽然我可能在这一点上弄错了,在通话结束后,应用程序可能会再次变为“非活动”和“活动”。我还没有100%地检查过这一点)

如果应用程序终止,您需要响应application delegate类中的
applicationWillTerminate
delegate方法


如果应用程序仅变为非活动状态,则您需要响应应用程序委托中的
应用程序[Did/Will]变为非活动状态
应用程序[Did/Will]变为活动状态
方法。

我相信,当收到来电时,应用程序将终止,但在通话结束后将重新启动。(虽然我可能在这一点上弄错了,在通话结束后,应用程序可能会再次变为“非活动”和“活动”。我还没有100%地检查过这一点)

如果应用程序终止,您需要响应application delegate类中的
applicationWillTerminate
delegate方法


如果应用程序仅变为非活动状态,则您需要响应应用程序代理中的
应用程序[Did/Will]变为非活动状态
应用程序[Did/Will]变为活动状态
方法。

接到呼叫后,系统将调用您的应用程序代理的applicationWillResignActive:方法,并显示是否接收传入呼叫的选项,这是至少在iOS4之前的标准行为,但在此之后,我们有3种可能的结果:

1) 用户忽略该调用:

->然后它被称为app委托的applicationWillBecomeActive:method

2) 用户决定接听电话(直到iOS 3.x):

->您的应用程序代理的applicationWillTerminate:被调用,您应该保存所有需要的数据、可用内存以及所有这些内容

3) 用户决定接听电话(iOS 4):

->调用了app委托的applicationIdentinterBackground:方法,您也应该处理这个问题,但这并不像applicationTerminate那么糟糕,只要确保保存合理的数据并释放尽可能多的内存即可

我知道这已经有一段时间了,但我也不得不寻找这个,我尽可能地回答,只是为了那些从现在起可能最终需要这个的人:)


苹果公司自己的应用程序编程指南是一个更详细的阅读此内容的好地方:

在接到呼叫时,系统将调用应用程序代理的应用程序WillResignActive:方法,并显示是否接收来电的选项,这是至少在iOS4之前的标准行为,但在此之后,我们有3种可能的结果:

1) 用户忽略该调用:

->然后它被称为app委托的applicationWillBecomeActive:method

2) 用户决定接听电话(直到iOS 3.x):

->您的应用程序代理的applicationWillTerminate:被调用,您应该保存所有需要的数据、可用内存以及所有这些内容

3) 用户决定接听电话(iOS 4):

->调用了app委托的applicationIdentinterBackground:方法,您也应该处理这个问题,但这并不像applicationTerminate那么糟糕,只要确保保存合理的数据并释放尽可能多的内存即可

我知道这已经有一段时间了,但我也不得不寻找这个,我尽可能地回答,只是为了那些从现在起可能最终需要这个的人:)


更详细地阅读这篇文章的好地方是苹果自己的应用程序编程指南:

thanx wintermute,但有谁能告诉我通话结束后会发生什么,我们的应用程序是否会