ios7新特性2--多任务提升
iOS 7 为应用程序提供新的后台执行模式:
- 应用程序需要需要下载新内容,可以向系统注册,这样程序会被定期唤起或者启动,然后可以在后台下载内容。要注册这个功能,需要打开Info.plist 文件,设置UIBackgroundModes 键值为 fetch ,并且通过setMinimumBackgroundFetchInterval: 方法设置最小的获取内容的时间间隔。
另外,程序如果想要现在任何内容,必须实现application:performFetchWithCompletionHandler: 方法。
- 以前应用程序可以利用推送通知告知用户有新的内容,现在则可以利用此机制初始后台下载操作。要支持这种模式,打开Info.plist 文件,设置UIBackgroundModes 键值为remote-notification Apps that use push notifications to notify the user that new content is available can now use those notifications to initiate background download operations. To support this mode, include the UIBackgroundModes key with the remote-notification value in your app’s Info.plist file.
另外,应用app delagate必须要实现以下方法:application:didReceiveRemoteNotification:fetchCompletionHandler:
支持fetch或者推送后台模式的程序,可能会适当时候被启动或者从挂起状态转为后台状态。
如果是fetch 后台模式,系统通过当前可用信息确定程序启动或者唤醒的实际。比如,当网络状况比较好或者设备已经启动。支持推送后台模式的程序可能在推送通知到来以后,但是用户看到它之前唤起程序,这样程序可以下载相关内容,当内容准备好以后再呈现给用户。
为了支持后台内容下载,应用程序必须使用 NSURLSession 类。这个类在 NSURLConnection 类基础上进行了优化,提供简单的,基于任务的接口用来初始化和处理 NSURLRequest 对象。一个 NSURLSession 对象可以初始多个下载和上传任务,并且可以通过delegate处理来自服务器的验证请求。
关于更多后台模式支持,请访问 “App States and Multitasking” in iOS App Programming Guide.
ios7新特性2--多任务提升的更多相关文章
- IOS7 新特性(针对同样讨厌更新后IOS7的开发者)
本文转载至 http://blog.csdn.net/hanbing861210/article/details/13614211 您还未登录!|登录|注册|帮助 首页 业界 移动 云计算 研发 论坛 ...
- iOS- 给App添加内购& 验证购买iOS7新特性
1.内购——应用内购买 我所说的内购——也可以说是应用内购买 大家都知道通过苹果应用程序商店有三种主要赚钱的方式: 1.直接收费(与国内大部分用户的消费习惯相悖,如果要收费,直接收高的,别收6块钱) ...
- IOS7 新特性
相关ios7新特性 帖子.挺全的.一定要看看哪 http://www.devdiv.com/iOS_iPhone-ios_ui_uikit_text_kit_-thread-203631-1-1.ht ...
- ios7新特性1-UI变化、UIKit动态行为支持与Text Kit新接口
iOS 7.0新特性1 iOS 7的UI经过了重新设计.另外,iOS7中引入了新的动画系统,便于创建2D和2.5D的游戏.多任务支持提升,点对点通讯以及其他重要的特征使iOS7相对于以往的SDK来说发 ...
- ios7新特性实践
一 iOS 7 新特性:视图控制器切换API 二 iOS 7系列译文:认识 TextKit 三 iOS 7系列译文:iOS7的多任务处理 四 iOS7 最佳实践:一个天气应用案例(上) 五 iOS7 ...
- ios7新特性3-Map Kit新特性
Map Kit 框架 (MapKit.framework) 包含了大量的改进以及为基于地图的程序提供了新特性.利用地图显示位置信息的应用现在可以使用Maps这个程序用到的3D地图,包括控制程序控制视线 ...
- Git 2.7: 一个新的带来许多新特性和性能提升的主要版本
在2.6版本发布两个月之后,Git 2.7发布.该版本带来了许多新特性以及性能的提升. 本文选取了Git 2.7带来的主要变化: git remote支持get-url子命令,可以显示指定远端的URL ...
- 揭秘Sql2014新特性-tempdb性能提升
一直以来,在高负载,复杂的生产环境中,tempdb的压力是成为整个实例瓶颈的重要因素之一.微软的工程师们也在各个版本中不断优化它的使用.到了Sql Server2014又有了新的特性使其性能得temp ...
- iOS7新特性-NSURLSession详解
前言:本文由DevDiv版主@jas 原创翻译,转载请注明出处!原文:http://www.shinobicontrols.com/b ... day-1-nsurlsession/ 大家都知道,过去 ...
随机推荐
- 采用subversion管理iOS资源
1.装和配置subversionserver 在windows server上安装VisualSVN-Server.下载地址http://www.visualsvn.com/server/downl ...
- 【OpenCV十六新手教程】OpenCV角检测Harris角点检测
本系列文章由@浅墨_毛星云 出品.转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/29356187 作者:毛星云(浅墨) ...
- MySQL源码:索引相关的数据结构
http://www.orczhou.com/index.php/2012/11/mysql-source-code-data-structure-about-index/ 本文将尝试介绍MySQL索 ...
- MAC上更新Ruby失败解决办法
尝试用RVM升级Ruby http://blog.csdn.net/lissdy/article/details/9191351 如果碰到下面问题 Searching for binary rubie ...
- Quartz.NET simple_demo
Quartz.NET是一个开源的作业调度框架,非常适合在平时的工作中,定时轮询数据库同步,定时邮件通知,定时处理数据等. Quartz.NET允许开发人员根据时间间隔(或天)来调度作业.它实现了作业和 ...
- linux中的网络通信指令 分类: 学习笔记 linux ubuntu 2015-07-06 16:02 134人阅读 评论(0) 收藏
1.write write命令通信是一对一的通信,即两个人之间的通信,如上图. 效果图 用法:write <用户名> 2.wall wall指令可将信息发送给每位同意接收公众信息的终端机用 ...
- linux bash下 快捷键
c + a # 光标跳转到最左 c + e # 光标跳转到最后 c + w # 删除最后输入的单词 c + u # 删除整行 c + k # 删除光标到末尾 c + l # 清屏 c + z # 挂起 ...
- 微信45028错误,微信has no masssend quota hint错误
微信45028,微信has no masssend quota hint 微信测试账号群发出现45028,has no masssend quota hint错误 >>>>&g ...
- C# 事件的理解
说实话,事件弄得还是很晕,有待于以后的强化吧,下面是我对事件的一点理解 首先,参见大牛的帖子:网上大牛事件讲解 下面我来说一说事件的大致流程: 事件委托事件概述事件就是当对象或类状态发生改变时,对象或 ...
- java反射的应用+mybatis+spring动态生成数据库表
最近接触了一个类似于代码生成工具的活.思路是,通过java的反射机制得到类的字段和字段类型, 从而可以创建一个map集合存储表名(由类名决定的特殊结构字符串),表字段(由类变量确定),表字段类型(由变 ...