applicationDidBecomeActive被调用两次

Abh*_*nav 22 iphone cocoa-touch objective-c uiapplicationdelegate ios

applicationDidBecomeActive:第一次启动应用程序时,我的app delegate方法被调用两次.我有一部分代码,我只想执行一次而且我已经投入了applicationDidBecomeActive:

我该怎么办?

Abh*_*nav 38

我遇到了这个问题.我正在使用位置服务.在我点击位置服务警报上的"确定"后第一次启动时,我的applicationDidBecomeActive再次被调用,这是正常的iOS行为.


tej*_*hri 16

如果您只想在应用变为活动状态时调用一次代码,请尝试从两种方法中调用它.1. didFinishLaunchingWithOptions 2. applicationWillEnterForeground

而不是仅从applicationDidBecomeActive调用它.


Jin*_*wei 10

这是因为位置或推送通知警报.

在原始位置/推送通知被解除后,将调用applicationDidBecomeActive.

  • 我们如何正确区分"真正的"applicationDidBecomeActive:当我们的应用程序实际进入后台时,由于位置警报而强行进入后台? (2认同)