1

有一些东西让我的应用程序在它被暂停和重新打开之间崩溃。这是一个使用 didUpdateLocations 回调/委托函数的基于位置的应用程序。我有一个或两个计时器在后台运行,我不确定当应用程序最小化时它们会发生什么。

我一直在思考。真的,如果计时器不在后台运行,那很好;他们不需要。但是他们是否会被暂停,当应用程序重新启动时,他们会试图赶上他们所在的位置或其他什么?为什么我的应用程序在我重新打开时会崩溃?

它也不是重新打开时崩溃那么简单。如果是正常的时间,它会起作用。该应用程序在合理范围内无限期地在后台运行,所以如果我等一两天再打开它,它就会崩溃。不一定会崩溃,但会冻结。它不发送崩溃报告,只是坐在那里什么都不做。我无法与 UI 或任何东西进行交互。什么可能导致它这样做?

就像我说的,唯一“无限期”运行的是 didUpdateLocations 方法和一两个检查事物的计时器。这就是程序流程。这一切都源于此。如果有人需要,我可以提供一些代码或更多信息。

有任何想法吗?

4

1 回答 1

0

正如 lehn0058 所提到的,当应用程序打开时,计时器会为每个错过的增量触发一次。这可能是灾难性的,听起来如果计时器没有设置为倒计时,它可能应该在每次打开和关闭应用程序时失效并重新启动。我最近发现的另一个选择是名为 Flurry 的软件。这是我最近集成到我的应用程序中的分析软件。可能非常有用;如果他们还没有听说过,其他人应该调查一下。

于 2013-11-06T15:11:45.250 回答