zoukankan      html  css  js  c++  java
  • IOS Background 之 Background Fetch

    http://www.ithao123.cn/content-1363653.html

    定期更新数据的app,比如及时通信类,微博等app.

    定期后台获取,等打开后获取的快一些。

    30分钟后打开手,获取30分钟内qq消息。如果没5分钟获取一次,那么最后一次只刷新5分钟内的数据,速度快,体验好。但是费电!

    设置->通用->后台应用程序刷新。

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法中添加:
    [[UIApplication sharedApplication] setMinimumBackgroundFetchInterval:UIApplicationBackgroundFetchIntervalMinimum];
    MinimumBackgroundFetchInterval 参数值是两次Fetch时间间隔,不能保证每隔这个时间间隔都会调用。这里设置为 UIApplicationBackgroundFetchIntervalMinimum,意思是尽可能频繁的调用我们的Fetch方法。

    二,增加实现Fetch方法
    - (void)application:(UIApplication *)application performFetchWithCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler{};
    每次系统Fetch时都会调用该方法,我 们可以在该方法中做刷新数据等操作,操作执行完成以后要调用completionHandlerblock(),比 如:completionHandler(UIBackgroundFetchResultNewData);文档中说系统会根据 completionHandler(执行的时间)来估计此次Fetch的耗电等。如果耗时耗电比较多,可能会降低被调用的次数。但这个方法也不是不限时 执行的,说是有30s的时间来执行操作。completionHandler有三个参数:
    UIBackgroundFetchResultNewData 成功拉取数据
    UIBackgroundFetchResultNoData 没有新数据
    UIBackgroundFetchResultFailed 拉取数据失败或者超时

  • 相关阅读:
    Node.js+express 4.x 入门笔记
    排序系列 之 堆排序算法 —— Java实现
    排序系列 之 归并排序算法 —— Java实现
    javascript必须知道的知识要点(二)
    XGBoost安装
    ubuntu16.04查看哪些软件可更新
    禁止ubuntu更新内核
    ubuntu安装nvidia显卡驱动问题
    禁用ubuntu16.04的guest账户
    远程登录jupyter notebook
  • 原文地址:https://www.cnblogs.com/cb168/p/5134893.html
Copyright © 2011-2022 走看看