iOS开发:iOS的整体架构以及API介绍
iOS的系统层级结构和相关的框架
系统架构
层级 | 描述 |
---|---|
CocoaTouch | 该框架基于iPhoneOS应用层直接调用层,如触摸事件、照相机管理等,包该层含UIKit框架和Foundation框架。 |
Media | 该层框架和服务依靠CoreServices层,向CocoaTouch层提供画图和多媒体服务,如声音、图片、视频等。 |
Core Services | 提供核心服务,例如字符串处理函数、集合管理、网络管理、URL处理工具、联络人维护、偏好设置等。 |
Core OS | 包含核心部分、文件系统、网络基础、安全特性、能量管理和一些设备驱动,还有一些系统级别的API。 |
Cocoa Touch 触摸层:包括Address Book UI Framework、Event Kit UI Framework、Game Kit Framework、iAd Framework、Map Kit Framework、Message UI Framework、UIKit Framework等等,这一层基本都是基于 Objective-C的接口
Media媒体层:包含Core Graphics、Core Animation、OpenGL ES、Core Text、Image I/O、Assets Library Framework、Media Player Framework、AV Foundation、OpenAL、Core Audio Frameworks、AV Foundation、Core Media等等
Core Services核心服务层:包含Address Book Framework、CFNetwork Framework、Core Data Framework、Core Foundation Framework、Core Location Framework、Core Media Framework、Core Telephony Framework、Event Kit Framework、Foundation Framework、Mobile Core Services Framework、Quick Look Framework、Store Kit Framework、System Configuration Framework、Block Objects、Grand Central Dispatch 、In App Purchase、Location Services、SQLite、XML Support等一些框架,也基本都是基于c语言的接口。
Core OS 核心层:包含Accelerate Framework、External Accessory Framework、Security Framework、System等几个框架,基本都是基于C语言的接口
操作系统核心Darwin
应用层:包括用户能接触到的图形应用,例如 、 等。
应用框架层:即开发人员接触到的 等框架。
核心框架层:包括各种核心框架、 等内容。
Darwin:即操作系统的核心,包括系统内核、驱动、 等内容,这一层是开源的,其所有源码都可以在 opensource.apple.com 里找到。
Darwin核心架构: