嘿,我正在模拟器中尝试多任务处理(我只有第二代iPod和iPad),但仍然遇到一些问题。我的测试方法如下:

- (void)applicationDidBecomeActive:(UIApplication *)application {
 NSLog(@"Entering %s",__FUNCTION__);

 if (enteredFromBackground) {
  NSLog(@"Entering from Background");
  enteredFromBackground = NO;
 }
}

- (void)applicationWillEnterForeground:(UIApplication *)application {
 NSLog(@"Entering %s",__FUNCTION__);

 enteredFromBackground = YES;
}

不幸的是,我没有看到来自applicationWillEnterForeground的NSLog,这就是为什么我添加了一行代码以向我显示applicationDidBecomeActive中的内容。
我所得到的是
2010-11-20 15:58:12.796 iBeat[45997:207] Entering -[AppDelegate_Shared applicationDidEnterBackground:]
2010-11-20 15:58:18.160 iBeat[45997:207] Entering -[AppDelegate_Shared applicationDidBecomeActive:]

最佳答案

在iOS 13中遇到此问题后,我发现我正在等待applicationWillEnterForeground(_ application: UIApplication)而不是sceneWillEnterForeground(_ scene: UIScene)的调用。

有关更多信息,请阅读以下答案:

enter link description here

关于iphone - applicationWillEnterForeground从未调用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4233315/

10-11 00:05