移动开发(IOS) – iOS系统架构
生活随笔
收集整理的這篇文章主要介紹了
移动开发(IOS) – iOS系统架构
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
移動開發(IOS) – iOS系統架構
1.iOS系統架構的四個層次
1.1.可觸摸層(Cocoa Touch):為應用程序開發提供各種有用的框架,并且大部分均與用戶界面有關,本質上來說它負責用戶在iOS設備上的觸摸交互操作。
1.2.媒體服務層(Media Services):負責提供用于構建應用程序的圖形和聲音的API,可以在應用程序中使用各種媒體文件,進行音頻與視頻的錄制,圖形繪制,以及制作基礎的動畫效果。
1.3.核心服務層(Core Services):這一層提供了訪問Core OS層的硬件功能并包含了Foundation框架。正因為如此,這一層提供了構建iOS應用程序所需的大量基礎元件,例如字符串、數組以及其他通用數據類型。核心服務層可以訪問iOS的一些服務,比如網絡連接、文件訪問、數據庫、用戶定位等。
1.4.核心操作系統層(Core OS ):這一層次包含了iOS操作系統的很多基礎組件,其中包括:系統內核、內存管理、文件系統、電源管理、網絡組件和設備驅動等,可以直接和硬件設備進行交互。
2.iOS系統框架
| 框架名稱 | 功能 |
| Foundation | 提供OC的基礎類(像NSObject)、基本數據類型等。 |
| UIKit | 創建和管理應用程序的用戶界面。 |
| QuartzCore | 提供動畫特效以及通過硬件進行渲染的能力。 |
| CoreGraphics | 提供2D繪制的基于C的API。 |
| SystemConfiguration | 檢測當前網絡是否可用和硬件設備狀態。 |
| AVFoundation | 提供音頻錄制和回放的底層API,同時負責管理音頻硬件。 |
| CFNetwork | 訪問和配置網絡,像HTTP、FTP和Bonjour Services。 |
| CoreFoundation | 提供抽象的常用數據類型,如Unicode strings、XML、URL等。 |
| CoreLocation | 使用GPS和WIFI獲取位置信息。 |
| GameKit | 為游戲提供網絡功能:點對點互聯和游戲中的語音交流。 |
| AddressBook | 提供訪問用戶聯系人信息的功能。 |
| AddressBookUI | 提供一個用戶界面,顯示存儲在地址簿中的聯系人信息。 |
| AudioToolBox | 提供音頻錄制和回放的底層API,同時負責管理音頻硬件。 |
| AudioUnit | 提供一個接口,讓應用程序可以對音頻進行處理。 |
| MapKit | 為應用程序提供內嵌地圖的接口。 |
| MediaPlayer | 提供播放視頻和音頻的功能。 |
| MessageUI | 提供視圖控制接口用以處理E-mail和短信。 |
| OpenGLES | 提供動畫特效以及通過硬件進行渲染的能力。 |
| StoreKit | 為應用程序提供在程序運行中消費的支持。 |
3.iOS 和 android 系統架構對比
3.1.android是基于Linux內核設計的,在Linux內核上面運行了一個Java虛擬機,虛擬機再運行軟件。像是在一個系統上面又套了一個系統,所以占內存較大、運行速度略低。
3.2.iOS是基于UNIX的,直接與底層硬件通信。系統底層、應用框架、應用軟件都是采用C/C++或者Objective-C寫的,所以有很高的運行效率。
總結
以上是生活随笔為你收集整理的移动开发(IOS) – iOS系统架构的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 编码、字符集编码、UTF8mb3/UTF
- 下一篇: golang框架gin的日志处理和zap