a1394393468
白白白小白
采纳率20%
2016-07-22 03:37

[IOS]代码求理解 :

已采纳

这是一段可以让程序在后台运行的代码 直接上代码
- (void)applicationDidEnterBackground:(UIApplication *)application {

UIApplication*   app = [UIApplication sharedApplication];
__block    UIBackgroundTaskIdentifier bgTask;
bgTask = [app beginBackgroundTaskWithExpirationHandler:^{
    dispatch_async(dispatch_get_main_queue(), ^{
        if (bgTask != UIBackgroundTaskInvalid)
        {
            bgTask = UIBackgroundTaskInvalid;
        }
    });
}];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
    dispatch_async(dispatch_get_main_queue(), ^{
        if (bgTask != UIBackgroundTaskInvalid)
        {
            bgTask = UIBackgroundTaskInvalid;
        }
    });
});

}

求大神讲一下这个代码

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • oyljerry oyljerry 5年前

    就是你的App进入后台后,执行一个后台的task来让它保持,但是实际效果要自己测试,iOS还是可能会杀后台进程

    点赞 评论 复制链接分享
  • a1394393468 白白白小白 5年前
    点赞 评论 复制链接分享