美文网首页专题~热更新移动端开发iOS 技术文集
iOS Background Fetch 后台应用程序刷新的使用

iOS Background Fetch 后台应用程序刷新的使用

作者: Alan张洋 | 来源:发表于2018-08-30 15:13 被阅读666次

    前言:写这篇文章是由于最近在开发一款新的APP,以前开发的APP因为都属于工具类,也没有必要后台刷新,所以一直没有使用该功能,这次正好用到,所以写下记录下,顺便帮助自己加强记忆。


    这个功能想必iOS程序猿们应该都知道了,毕竟出来很久了,在iOS7的时候就已经出来了,即时通讯的APP上一般都有使用该API,接下来就一起配置下:

    1、配置

    在开始创建 Background Fetch 功能,TARGETS->Capabilities->Background Modes,勾选 Background fetch,如果还需支持后台远程推送,则再勾选下面的 Remote notifications 即可,如下图所示:

    Background Fetch Capabilities

    2、使用

    首先在 AppDelegate 中的 didFinishLaunchingWithOptions: 方法中调用 setMinimumBackgroundFetchInterval: 方法

    didFinishLaunchingWithOptions:

    然后执行下面的代理方法,在该代理方法中请求相关数据并刷新UI,

    在这里还要提下 UIBackgroundFetchResult 是个枚举值, 有三个值, 分别为:

    UIBackgroundFetchResultNewData  成功拉取数据    

    UIBackgroundFetchResultNoData     没有新数据

    UIBackgroundFetchResultFailed         拉取数据失败或者超时

    performFetchWithCompletionHandler:

    最后再首页实现对应的方法即可

    refreshNewObjectForFetchWithCompletionHandler:

    3、调试

    如果以上步骤都做好,那么就打开模拟器调试一下,先将模拟器上APP切换为多任务模式,

    调试的方式有两种:

    第一种:在 Edit Scheme -> Run -> Options -> 勾选Launch due to a background fetch event

    Edit Scheme Launch due to a background fetch event

    第二种:直接在 Xcode 菜单栏 Debug -> Simulate Background Fetch 进行模拟

    Debug

    以上就是一个简单的后台刷新功能的开发和调试,再复杂的功能也是同样的思路。

    学无止境,虽说iOS市场没有以前火爆,但技术上需要研究的东西还很多很多。与大家一起学习一起进步才是王道。欢迎来聊各种话题。

    相关文章

      网友评论

        本文标题:iOS Background Fetch 后台应用程序刷新的使用

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