美文网首页
iOS生命周期之WillTerminate不执行的问题

iOS生命周期之WillTerminate不执行的问题

作者: CoderSahara | 来源:发表于2017-10-27 14:43 被阅读30次

    //今天遇到了一个问题
    //applicationWillTerminate:(UIApplication *)application 在退出程序时不执行怎么办?
    //答案:直接上代码...

    • (void)applicationDidEnterBackground:(UIApplication *)application {

      NSLog(@"%s", PRETTY_FUNCTION);
      __block UIBackgroundTaskIdentifier identifier = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
      if (identifier != UIBackgroundTaskInvalid) {
      [[UIApplication sharedApplication] endBackgroundTask:identifier];
      identifier = UIBackgroundTaskInvalid;
      }
      }];

      dispatch_async(dispatch_get_main_queue(), ^{
      NSLog(@"执行进入后台调用的方法...");

       //此处写正常进入后台时程序需要执行的动作
      
        if (identifier != UIBackgroundTaskInvalid) {
            [[UIApplication sharedApplication] endBackgroundTask:identifier];
            identifier = UIBackgroundTaskInvalid;
        }
      

      });
      }

    • (void)applicationWillTerminate:(UIApplication *)application {

    //此方法内写程序将要退出时需要执行的动作

    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.

    NSLog(@"%s", __PRETTY_FUNCTION__);
    [self.backView removeFromSuperview];
    [self.manager closeSocketServer];
    [self.conn stopNotifier];
    [[NSNotificationCenter defaultCenter]removeObserver:self];
    

    }

    相关文章

      网友评论

          本文标题:iOS生命周期之WillTerminate不执行的问题

          本文链接:https://www.haomeiwen.com/subject/zonrpxtx.html