Core OS層
Sytem
系統層包括內核環境,驅動及操作系統層unix接口。內核以mach為基礎,它 負責操作系統的各個方面,包括管理系統的虛擬內存,線程,文件系統,網絡以及進程間通訊。這一層包含的驅動是系統硬件和系統框架的接口。出於安全方面考 慮,內核和驅動只充許少數系統框架和應用程序訪問
科學運算框架
Accelerate.framework
附件框架
ExternalAccessory.framework
支持ios設備與其它設備進行通訊, 30針基座接口和設備相連,也可以通過藍牙連接,通過external accessory框架,可以獲取設備並初始化一個通訊會話,然後可以使設備支持的命令直接對其進行操作
數據安全框架
Security.framework
用於保證應用程序所管理的數據的安全,該框架提供的接口可用於管理證書,公鑰,私鑰以及信任策略。它支持生成加密的安全偽隨機數。同時也支持對證書和keychnia密鑰進行保存,是用戶敏感數據的安全創庫。
核心藍牙框架
CoreBluetooth.framework
允許開發人員進行交互專門與藍牙低能量附件(le)。通過oc接口允許您掃描le的配件,連接和斷開,閱讀和寫服務的屬性,注冊服務和屬性更改通知,以及更多。
通用安全服務框架
Gss.framework
iOS應用程序提供了一個安全相關的服務標准。在IETF RFC2743 和RFC 4401 指定這個框架的基本接口。除了提供標准接口,ios包括增加一些管理不指定的標准,但許多應用程序所需要的憑據。
陀螺儀框架
CoreMotion.framework
包含訪問加速計以及陀螺儀的數據接口。
Core Service 層
Core Services在Core OS基礎上提供了更為豐富的功能,它包含了Foundation.Framework和Core Foundation.Framework, 之所以叫Foundation ,就是因為它提供了一系列處理字串,排列,組合,日歷,時間等等的基本功能。Foundation是屬於Objective-C的API,Core Fundation是屬於C的API。另外Core servieces還提供了其他的功能,比如:
Security, Core Location, SQLite, 和Address Book. 其中Security是用來處理認證,密碼管理,按安全性管理的; Core Location是用來處理GPS定位的;SQLLite是輕量級的數據庫,而AddressBook則用來處理電話薄資料的。下面是具體介紹:
Core Foundation框架
CoreFoundation.framework
c語言接口,它們為ios應用程序提供基本數據管理和服務功能。
Foundation框架
Foundation.framework
使用Objective-C封裝CoreFoundation框架的許多功能
快速查看框架(預覽未知的文件內容)
QuickLook.framework
應用程序可以通過該框架預覽無法直接支持查看的文件內容。如果應用程序從網絡下載文件或者需要處理來源未知的文件,則非常適合使用此框架。因為應該程序只要在獲得文件後,調用框架提供的視圖控制器就可以直接在界面中顯示文件內容;
商店框架
StoreKit.framework
內購框架
視頻框架
CoreMedia.framework
提供AVFoundation框架使用的底層媒體類型,只有少數需要對音頻或視頻創建及展示進行精確控制的應用程序才會涉及該框架。
CoreData 框架
CoreData.framework
一 種管理模型-視圖-控制器應用程序數據模型的技術,它適用於數據模型已經高度結構化的應用程序。通過此框架,您再也不需要通過編程定義數據結構,而是通過 xcode提供的圖形工具構造一份代表數據模型的圖表。在程序運行的時候,core data框架就會創建並管理數據模型的實例,同時還對外提供數據模型訪問接口。
電話信息框架
CoreTelephony.framewok
此框架為訪問具有蜂窩無線的設備上的電話信息提供接口,應用程序可以通過它獲取用戶蜂窩無線服務的提供商信息。
網絡服務框架
SystemConfiguration.framework
可用於確定設備的網絡配置。您可使用該框架判斷wifi或蜂窩連接是否正在使用中,也可以用於判斷某個主機服務是否可用。
網絡連接框架
CFNetwork.framework
一組高性能c語言接口,它們為使用網絡協議提供面向對象抽象。通過這些抽象,您可以對協議棧進行更精細的控制,而且可以使用諸如BSD Socket 類底層結構。您也可以通過該框架簡化諸如與ftp或http服務器通訊以及dns主機解析這類任務。
GPS框架
CoreLocation.framework
定位框架:gps,蜂窩基站或wifi信號。
Mobile Core Service 框架
MobileCoreServices.framework
定義統一類型標識符使用的底層類型
日歷框架
EventKit.framework
訪問用戶設備的日歷事件提供接口。可以訪問用戶日歷中現有事件,可以增加新事件,日歷事件可以鬧鈴,可以配置激活規則。
地址本框架
AddressBook.framework
支持編程訪問存儲於用戶設備中的聯系人信息。如果應用程序使用到聯系人信息,則可通過該框架訪問並修改用戶聯系人數據庫的記錄。
Media 層
如同其名,Media層提供了圖片,音樂,影片等多媒體功能。圖像分為2D圖像和3D圖像,前者由Quartz2D來支持,後者則是用OpenglES. 與音樂對應的模組是Core Audio和OpenAL, Media Player 實現了影片的播放,而最後還提供了Core Animation來對強大動畫的支持。具體介紹如下:
資產框架
AssetsLibrary.framework
該框架提供一個查詢界面,您可以通過它查找用戶照片和數據。通過使用該框架,您可以訪問photos管理的資產,包括用戶保存的相冊以及導入到設備中的圖片或視頻。您可以將照片或視頻保存到用戶相冊。
圖形框架
CoreGraphics.framework
包含Quartz 2D繪圖API接口,Quartz 是Mac OS X 系統使用的向量繪圖引擎,它支持基於路徑繪圖,搞鋸齒,漸變,圖片,顏色,坐標空間轉換,pdf文件創建,顯示和解析。雖然api基於c,但是它使用基於對象的抽象以表示基本繪圖對象。
QuartzCore.framework
包 含Core Animation接口, Core Animation 是高級動畫制作和混合技術,它使用經過優化的渲染路徑實現復雜的動畫和視覺效果。它提供高級objective-c接口可對動畫效果進行配置。然後在設備 硬件中進行渲染,以提高性能。 Core Animation框架被整合到ios社會多部分(uikit 的 uiview) 可以為多種系統行為提供動畫效果。
OpenGLES.framework
OperGL es 提供工具可用於繪制2d 3d內容。基於 c,在ios5中提供了oc的封裝glkit
CoreText.framework
簡單高效的c接口,對文本進行布局,字體處理。
ImageIO.framework
用於導入導出圖像數據及圖像元數據,該框架建構於CoreGraphics數據類型和函數之上,能夠支持ios上所有標准圖像類型。
音頻框架
MediaPlayer.framework
應用程序播放視頻和音頻內容提供高級支持。可以使用標准系統界面播放視頻。ios3.0增加了對訪問用戶itunes庫的支持。因此,您可以使用該框架播放音,播放列表,搜索歌曲向用戶顯示姐體選取界面。
AVFoundation.framework
oc類用於播放音頻內容。可以是文件或內存中的音頻數據。可以同時播放多個聲音。
OpenAL.framework
方位音頻的跨平台標准;游戲或有方位音頻輸出的應用中實現高性能,品質的音頻。
CoreAudio.framework
AudioToolbox.framework
AudioUniT.framework
c語言接口,可用於操作立體聲音叔。通過core audio 框架,您可以在應用中生成,錄制,混合或播放音頻,也可以訪問設備的震動功能。
視頻框架
MediaPlayer.framework
播放視頻,音頻提供高級支持;有標准系統界面播放視頻;ios3.0增加了對訪問用戶itunes庫的支持。
CoreVideo.framework
為core media 提供緩存和緩存池的支持。大多數應用程序都不應該直接使用該框架。
CoreMedia.framework (Core Services) 屬於服務層
對較高極框架使用的底層類型進行描述,同時也提供一些底層接口,它們用於對媒體進行處理。
MIDI 框架
CoreMIDI.framework
IOS4.2 推出,提供了一個標准的與midi設備進行溝通,包括硬件鍵盤和合成器。您可以使用此框架來發送和接收midi消息和交互連接到一個基於ios的設備的基座連接器或絡的midi外設。
GLKit 框架
GLKit.framework
在ios5中引入的,包含了一套oc為基礎的實用工具類,簡化了創建一個opengl es2.0應用所需要的努力。
帳戶框架
Accounts.framework
NewsstandKit 框架
專門對數字出版做的一個新功能。它能把所有用戶訂閱的報刊或雜志類的app都放在一組圖標裡。
Cocoa Touch層
最上面一層是Cocoa Touch,它是Objective-C的API,
其中最核心的部分是UIKit.Framework,應用程序界面上的各種組件,全是由它來提供呈現的;
除此之外它還負責處理屏幕上的多點觸摸事件,文字的輸出,圖片,網頁的顯示,相機或文件的存取,以及加速感應的部分等。具體介紹如下:
UIKit 框架
UIKit.framework
用戶界面層使用的類和方法
支持圖形和窗口;
支持觸摸事件處理;
用戶接口管理;
提供用來表征標准系統視圖和控件的對象;
支持文本和Web內容;
通過URL scheme與其他應用的集成。
為提供基礎性代碼建立應用,UIKit也支持一些與設備相關的特殊功能,如下所示:
加速計數據;
內建Camera;
用戶圖片庫;
設備名稱和模式信息。