美文网首页
iOS 利用Block,让程序在后台长久运行

iOS 利用Block,让程序在后台长久运行

作者: 奋斗的DevAmos | 来源:发表于2017-03-31 13:53 被阅读47次

    使用block的好处是可以让程序在后台较长久地运行.当应用被按Home键退出后,应用最后5秒钟的时间做一些保存或清理资源的工作.但是应用可以调用UIApplication的beginBackgroundTaskWithExpirationHandler
    方法,让应用最多有10分钟的时间在后台长久运行.这个时间可以用来做清理本地缓存,发送统计数据等工作.

    让程序在后台长久运行的示例代码如下:

    //AppDelegate.h文件    后台运行

    @property (nonatomic, assign) UIBackgroundTaskIdentifier backgroundUpdateTask;

    // AppDelegate.m 文件

    - (void)applicationDidEnterBackground:(UIApplication *)application {
    // 在这里加上你需要长久运行的代码
    }


    //后台作业

    - (void)beginBackgroundUpdateTask {

    __weak typeof(self) weakSelf = self;

    self.backgroundUpdateTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{

    [weakSelf endBackgroundUpdateTask];

    }];

    }

    // 结束后台作业

    - (void)endBackgroundUpdateTask {

    [[UIApplication sharedApplication] endBackgroundTask:self.backgroundUpdateTask];

    self.backgroundUpdateTask = UIBackgroundTaskInvalid;

    }



    相关文章

      网友评论

          本文标题:iOS 利用Block,让程序在后台长久运行

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