iOS系統架構和經常使用框架

(一)iOS的系統架構數據庫

iOS基於UNIX系統,iOS的系統架構分爲四層,由上到下一次爲:可觸摸層(Cocoa Touch layer)、媒體層(Media layer)、核心服務層(Core Services layer)、核心操做系統層(Core OS layer),以下圖:安全

 

(1)觸摸層:爲應用程序開發提供了各類經常使用的框架而且大部分框架與界面有關,本質上來講它負責用戶在iOS設備上的觸摸交互操做。如NotificationCenter的本地通知和遠程推送服務,iAd廣告框架,GameKit遊戲工具框架,消息UI框架,圖片UI框架,地圖框架,鏈接手錶框架,自動適配等等網絡

(2)媒體層:提供應用中視聽方面的技術,如圖形圖像相關的CoreGraphics,CoreImage,GLKit,OpenGL ES,CoreText,ImageIO等等。聲音技術相關的CoreAudio,OpenAL,AVFoundation,視頻相關的CoreMedia,Media Player框架,音視頻傳輸的AirPlay框架等等。架構

(3)核心服務層:提供給應用所須要的基礎的系統服務。如Accounts帳戶框架,廣告框架,數據存儲框架,網絡鏈接框架,地理位置框架,運動框架等等。這些服務中的最核心的是CoreFoundation和Foundation框架,定義了全部應用使用的數據類型。CoreFoundation是基於C的一組接口,Foundation是對CoreFoundation的OC封裝。框架

(4)核心操做系統層包括:包含大多數低級別接近硬件的功能,它所包含的框架經常被其它框架所使用。Accelerate框架包含數字信號,線性代數,圖像處理的接口。針對全部的iOS設備硬件之間的差別作優化,保證寫一次代碼在全部iOS設備上高效運行。CoreBluetooth框架利用藍牙和外設交互,包括掃描鏈接藍牙設備,保存鏈接狀態,斷開鏈接,獲取外設的數據或者給外設傳輸數據等等。Security框架提供管理證書,公鑰和私鑰信任策略,keychain,hash認證數字簽名等等與安全相關的解決方案。 ide

 

(二)經常使用的iOS SDK框架函數

Accelerate.framework 包含加速數學和DSP函數。工具

AddressBook.framework 包含直接訪問用戶聯繫人數據庫的函數。佈局

AddressBookUI.framework 包含顯示系統定義的聯繫人挑選界面和編輯界面的類。優化

AssetsLibrary.framework 包含顯示用戶照片和視頻的類

AudioToolbox.framework 包含處理音頻流數據以及播放或錄製音頻的接口。

AVFoundation.framework 包含播放或錄製音頻的Objective-C接口。

AudioUnit.framework 包含加載並使用音頻單元的接口。

CFNetwork.framework 包含經過WiFi或者蜂窩無線訪問網絡的接口。

CoreAudio.framework 包含Core Audio框架使用的各類數據類型。

CoreData.framework 包含管理應用程序數據模型的接口。

CoreFoundation.framework 提供一些基本軟件服務,包括常見數據類型抽象、字符串實用工具、羣體類型實用工具、資源管理以及偏好設置。

CoreGraphics.framework 包含Quartz 2D接口。

CoreLocation.framework 包含肯定用戶方位信息的接口。

CoreMedia.framework 包含操做音頻和視頻的底層例程。 

CoreMotion.framework 包含訪問加速度計以及陀螺儀的數據的接口。

CoreTelephony.framework 包含訪問電話相關的信息的例程。

CoreText.framework 包含一個文本的佈局渲染引擎。

CoreVideo.framework 包含操做音頻和視頻的底層例程。

EventKit.framework 包含訪問用戶日曆事件數據的接口。 

EventKitUI.framework 包含顯示標準系統日曆界面的類。

ExternalAccessory.framework 包含與外設進行通信的接口。

Foundation.framework 包含Cocoa Foundation層的類和方法。

GameKit.framework 包含點對點鏈接管理接口。

iAd.framework 包含在應用程序中顯示廣告的類。

ImageIO.framework 包含讀取或寫入圖像數據的類。

IOKit.framework 包含設備所使用的接口。

 

MapKit.framework 包含將地圖界面嵌入到應用程序的類,也能夠用於查找地理編碼反向座標。

MediaPlayer.framework 包含顯示全屏視頻的接口。

MessageUI.framework 包含撰寫和排隊發送電子郵件信息的界面。

MobileCoreServices.framework 定義系統支持的統一類型標識符(UTIs)。

OpenAL.framework 包含OpenAL接口。OpenAL是一個跨平臺的方位音頻庫。

OpenGLES.framework包含OpenGL ES接口。OpenGL ES框架是OpenGL跨平臺2D和3D渲染庫的跨平臺版本。

QuartzCore.framework 包含Core Animation接口。。

QuickLook.framework 包含預覽文件接口。

Security.framework 包含管理證書、公鑰私鑰以及信任策略的接口。

StoreKit.framework 包含用於處理與應用程序內購買相關的財務交易。

SystemConfiguration.framework 包含用於處理設備網絡配置的接口。

UIKit.framework 包含iOS應用程序用戶界面層使用的類和方法。

相關文章
相關標籤/搜索