标签:
我们讲到了iOS软件体系结构中的基础层Core OS,那么在核心操作系统层之上的就是iOS系统的核心服务层Core Service,核心服务层主要由两个部分组成:核心服务库和基于核心服务的高级功能。本文对这两种功能做一详解。
一、核心服务层所包含的库如下:
1、Address Book Framework
用于地址簿管理,开发者可以通过这个库管理电话联系人列表,访问联系人列表的数据库,然后进行添加、删除和编辑等其他操作。
2、CFNetwork Framework
提供了一系列的接口,可以让开发者更方便、快捷地进行网络沟通。开发者无需关注过多的细节,可以花更多的精力在应用程序上面。
3、Core Data Framework
用于管理基于MVC模式(Model模型、View视图、Controller控制器)应用程序的数据模型,它是一个关系数据管理系统。Core Data提供了在存储器中保存、管理、更改以及获取数据等基础功能。
4、Core Foundation Framework
它是一个C语言库,为应用程序提供了各种基础设施。
5、Core Location Framework
提供定位的功能,可以运用GPS、3G和WiFi来侦测用户的位置,地图应用程序可以使用这个功能来显示用户在地图上的位置。开发者可以将其加入到应用程序中实现相关的功能,如根据位置提供附近餐馆、商店以及银行等的搜索服务。
6、Core Media Framework
提供比较底层的媒体处理,通常很少用到这个库。有需要用到的读者可以观看扣丁学堂iOS在线视频讲座,讲师对其讲述的很简洁明了,易于操作。
7、Core Telephony Framework
提供接口帮助用户收集电话商的服务信息,例如,用户可以知道自己用的是哪个电话商的服务,知道自己的设备现在是不是在打电话。
8、Event Kit Framework
可以让用户在自己的设备上访问日历事件,用它来获取现有的日历事件或者添加一个新的事件,例如进行闹钟控制。
9、Foundation Framework
提供的功能和Core Foundation Framework提供的功能差不多,区别在于它是Objective—C库。
10、Mobile Core Services Framework
为UTI(Uniform Type Identifiers,统一类型的标识符)定义了比较底层的数据类型。
11、Quick Look Framework
可以让用户对文件的内容进行预览。
12、Store Kit Framework
为应用程序与App Store(应用程序商店)之间的通信提供服务,应用程序可以通过该库从AppStore接收那些用户需要的产品信息,并显示出来供用户购买。当用户需要购买某件产品时,程序调用Store Kit来收集购买信息。
13、System Configuration Framework
通过该库可以让用户决定设备的网络配置,例如,是否使用WiFi连接或者是否连接某个网络服务。
二、基于核心服务的高级功能
1、BlockObjects
C语言构造体,这也是iOS开发者们非常常用的一个功能,开发者可以将它插入到C代码或者Objective—C代码中。从本质上来说,一个Block Objects就是一个封闭函数,或者说是伴随这个函数的数据。一般来说,Block Objects可以运用到下面几种情形:
①代替代理和代理方法。
②代替回调函数。
③与分发堆栈一起实现异步工作。
2、Grand Central Dispatch
简称GCD,它可以根据处理器的数量调整应用程序的工作负荷,而且只会使用任务所需数量的线程,从而提高应用程序的效率。例如,在不使用GCD时,如果一个应用程序在最大负载时需要20条线程,那么即使在空载时,它也会建立20条线程,并占用相关资源。而使用GCD时则不然,GCD会释放闲置资源,以加快整个系统的响应速度。
3、InApp Purchase
基于Store Kit Framework的高级功能,通过这个功能用户可以让自己的应用程序很好地处理账号、App Store与应用程序之间的关系。
4、Location Services
基于Core Location Framework的服务功能,可以让应用程序给用户定位,查找用户当前位置。
5、SQLite(嵌入式数据库)
可以让iOS开发者在应用程序里面嵌入一个轻量级的SQL数据库,无需建立一个分开的数据库服务器,就可以在应用程序里面创建一个Database文件,然后进行列表和记录的管理。
6、XML Support
可以让开发者对XML文件讲行解析。
认识了iOS软件的体系结构的核心服务层Core Service,下一节我们来研究最上面的两层结构都有哪些专属功能和负责区域,最上面两层分为媒体层和可轻触层,具体介绍我们随时关注扣丁学堂资讯的更新即可。
标签:
原文地址:http://www.cnblogs.com/codingke/p/5054046.html