-
Local and Remote Notifications Overview
本地通知和远程通知,可以在当新事件和事务发生时通知用户,甚至当你的应用程序不是在前台运行。例如,社交应用可以通知用户有一个新消息,日历应用可会提醒用户即将到来的约会。本地和远程的通知之间的区别是直接的: 随着本地通知,您的应用程序在本地配置的通知的详细信息,并将这些信息传到系统中,然后当你的应用程序不在前台时发送本地通知。 随着远程通知,您使用公司的一台服务器通过苹果推送通知服务(简称APNs)将数据推送到用户设备。iOS上,tvOS,watchOS和MacOS支持远程通知。本地和远程...…
-
Understand Cache Accesss
了解高速缓存访问URL Loading system给请求和响应提供一个复合的磁盘和内存缓存方式。此缓存允许应用程序减少对网络连接的依赖,并提高其性能。请求使用缓存一个NSURLRequest实例可以说明本地缓存是如何使用的,通过将缓存策略设置为NSURLRequestCachePolicy枚举中的一个值:NSURLRequestUseProtocolCachePolicy,NSURLRequestReloadIgnoringCacheData,NSURLRequestReturnCach...…
-
Authentication Callenges and TLS Chain Validation
身份验证质询和传输层安全连接验证 authentication challenge:身份验证质询 TLS:传输层安全一个NSURLRequest对象常常遇到一个身份验证质询,或者从它连接到服务器的请求证书。NSURLSession类通知其委托 ,当请求遇到一个身份验证质询,使他们可以采取相应的行动。重要提示: URL加载系统类并不调用他们的委托来处理请求,除非挑战服务器响应包含了一个WWW-Authenticate响应头。其他身份验证类型,如代理身份验证和TLS信任验证不需要这个响应...…
-
Using NSURLSession
使用NSURLSessionNSURLSession及相关类提供了使用HTTP下载内容的API。这个API提供了一套丰富的委托方法,来支持认证,后台下载(在app没有运行或是app被挂起的时候)。使用NSURLSessionAPI,您的应用程序创建一系列的会话session,协调一组相关的数据传输任务。例如,如果你正在编程一个Web浏览器,应用程序可以为每个tab或window创建一个会话。在每个会话中,你的应用程序加了一系列任务,其中每一个任务都代表特定URL的请求(以及如果原始URL返...…
-
Life Cycle of a URL Session
一个URL会话生命周期您可以使用NSURLSessionAPI有两种方式:使用系统提供的委托,或使用自定义委托。一般情况下,你必须使用自定义委托,如果你的应用程序需要做下列处理: 使用后台会话上传或下载内容,当您的应用程序没有运行。 执行自定义验证。 执行自定义SSL证书验证。 决定传输是否应被下载到磁盘,或基于由服务器返回的MIME类型显示。 从body stream上载数据(而不是一个NSData对象)。 代码限制缓存。 代码限制HTTP重定向。如果您的应用程序并不需要做...…
-
Encode URL Data
编码URL数据URL编码字符串,使用Core Foundation 函数的CFURLCreateStringByAddingPercentEscapes和CFURLCreateStringByReplacingPercentEscapesUsingEncoding。这些函数允许编码您指定的字符列表,除了高ASCII编码(0x80- 0xff)和非打印字符。根据RFC 3986,在URL中的保留字符有:reserved = gen-delims / sub-delims gen-del...…
-
About the URL Loading System
关于URL加载系统本指南介绍了这个框架可用于URL交互,并使用标准的互联网协议与服务器进行通信。这些类被总称为URL Loading System。URL Loading System是一套class和protocol的集合,使您的应用程序通过URL访问内容。此技术的核心是NSURL类,它可以让应用程序处理指定URL和resource。为了支持NSURL类,Foundation框架提供一系列丰富的类,让你加载URL的内容,上传数据到服务器,管理cookie存储,控制响应缓存,处理证书存储和...…
-
View Controller Program Guide for iOS(五)
适配模型-The Adaptive Model适配界面是一个对可用空间的最佳利用。作为自适应意味着能够调整内容适配任何iOS设备。在iOS中的自适应模型Adaptive Model用简单且动态的方法来重新排列,并调整内容来应对变化。当你利用这个模式,一个单一的应用程序用很少的额外代码,就能适应不同的屏幕尺寸(如图12-1)。图12-1适配不同的设备和方向一个适配屏幕的重要工具是自动布局。使用自动布局,您可以定义规则(被称为约束Constraints)控制控制器的视图布局。你可以在Inter...…
-
View Controller Program Guide for iOS(一)
OverviewThe Role of View Controllers - 视图控制器的角色视图控制器是你的应用程序内部结构的基础。每个应用程序都至少有一个视图控制器,并且大多数应用程序会有多个。每个视图控制器管理你的应用程序的一部分用户界面,以及该接口和基础数据之间的交互。视图控制器也便于不同用户界面的之间的转换。因为view controller在你的应用程序中扮演着重要的角色,所以它是你所做的一切的中心。UIViewController类定义了方法method和属性,来管理视图,处...…
-
View Controller Catalog for iOS(一) - UINavigationController
解剖导航视图导航控制器的主要工作是管理内容视图控制器的呈现,也负责呈现一些自定义视图。具体地讲,它呈现了一个navigation bar,其中包含一个返回按钮和一些可自定义的按钮。导航控制器也可以选择呈现toolbar以及其上填充自定义按钮。图1-1显示了一个导航界面。在该图中,Navigation view是存储在导航控制器的view属性。所有的在界面上的其他view,是由导航控制器管理的不透明视图层次结构的一部分。虽然navigation bar(导航栏)和toolbar(工具栏)是自...…