我如何debugging应该由位置服务启动的iPhone应用程序,从终止状态进入后台?

我们被告知,通过苹果关于startMonitoringSignificantLocationChanges的文档,使用意义变化API的应用程序可以预期以下行为:

如果您启动此服务,并且您的应用程序随后终止,则系统会在新事件到达时自动将应用程序重新启动到后台。 在这种情况下,传递给应用程序委托的locationManager:didUpdateLocations:方法的选项字典包含UIApplicationLaunchOptionsLocationKey键,表示由于位置事件而启动了您的应用程序。 重新启动后,您仍然必须configuration一个位置pipe理器对象并调用此方法来继续接收位置事件。 当您重新启动位置服务时,当前事件会立即传送到您的委托。 另外,即使在启动位置服务之前,您的位置pipe理器对象的位置属性也会填入最近的位置对象。

来源: Apple Docs

我的问题是,我将如何去debugging和/或testing呢? 只要我终止应用程序,我不知道发生了什么(即debugging会话被杀死的应用程序)。 我什么时候才能知道iOS是否在后台启动了我的应用程序,并且UIApplicationLaunchOptionsLocationKey的launchOption键被设置了? 更重要的是,如何知道被执行的代码块是否正常工作? 如何快速testing这个场景,而不必在终止我的应用程序后驾驶,希望我写的代码能够神奇地工作? 任何帮助非常感谢!

使用Xcode的debugging>附加到进程>按进程标识符(PID)或名称…菜单:您可以提供进程的名称,然后Xcode将等待,直到启动附加并启动debugging会话。