IOS SDK的架构
IOS SDK综述
前言:
这篇文章除了架构没有太多的东西,但是我一直觉得知道SDK能提供什么东西对IOS的整体架构把握很重要,会少走很多弯路。
一 几点理解
官方关于IOS的文档
https://developer.apple.com/devcenter/ios/index.action
这里要提到的是,Apple的文档是深入理解IOS开发的根源,所以,一定要能够看懂文档。另外,Apple建议,能使用上层的库来实现就尽量使用上层的,SDK提供的上层库的效率往往比较高。(毕竟Cocoa经历过那么多年的历史,经过无数锤炼,顺着它来总没错)
本文主要来自官网文档
链接
https://developer.apple.com/library/ios/documentation/Miscellaneous/Conceptual/iPhoneOSTechOverview/Introduction/Introduction.html
二 IOS系统的分层
分层用一幅图来看
IOS的底层是基于Unix系统的,所以很多Unix系统的特征,IOS都有。
Cocoa Touch Layer
App Extensions |
HandOff |
Document Picker |
Air Drop |
Text Kit |
UIKit Dynamics |
Multitasking |
Auto Layout |
Stroyboard |
UI State Preservation |
App Push Notification |
Local Notification |
Gesture Recongnizer |
Standard System View Controller |
Cocoa Touch FrameWork
Address Book UI FrameWork |
EventKit UI FrameWork |
GameKit FrameWork |
iDaFrameWork |
MapKit FrameWork |
Message UI FrameWork |
PushKit FrameWork |
Twitter FrameWork |
UIKit FrameWork |
Media Layer
Graphics Technology
UIKit graphics(BeizerPath) |
Core Graphics FrameWork |
Core Animation |
Core Image |
OpenGL ES and GLKit |
MEtal |
Text Kit and Core Text |
Image I/O |
Photos Library |
Audio Technology
Media Player Framework |
AV Foundation |
Open AL |
Core Audio |
Video Technology
UIImagePickerController |
AVKit |
AV Foundation |
Core Media |
Media Layer FrameWork
Assets Library Framework |
AV Foundation Framework |
AVKit Framewrok |
Core Audio |
Core Audio Framework |
Core Graphics Framework |
Core Image Framework |
Core Text Framework |
Core Video Framework |
Game Controller Framework |
GLKit Framework |
Image I/O Framework |
Media Accessibility Framework |
Media Player Framework |
Metal Framework |
OpenAL Framework |
OpenGL ES Framework |
Photos Framework |
Photos UI Framework |
Quartz Core Framework |
Scene Kit FrameWork |
Core Servie Layer
iCloud Storage |
Block Objects |
Data Protection |
File-Sharing Support |
GCD |
In App purchase |
SQLite |
XML Support |
Core Service Framework
Accounts Framework |
Address Book Framework |
Ad support Framework |
CFNetwork Framework |
CloudKit Framework |
Core Data Framework |
Core Foundation Framwork |
Core Location Framework |
Core Media Framework |
Core Motion Framework |
Core Telephony Framework |
EventKit Framework |
Foundation Framework |
HealthKit Framework |
HomeKit Framework |
JavaScript Core Framework |
Mobile Core Service Framework |
Multipeer Connectivity Framework |
NewsstandKit Framework |
PassKit Framework |
Quick Look Framework |
Safari Service Framework |
Social Framework |
StoreKit Framework |
System Configuration Framework |
WebKit Framework |
Core OS Layer
Accelerate Framework |
Core Bluetooth Framework |
External Accessory Framework |
Generic Security Service Framework |
Local Authentication Framework |
Network Extension Framework |
Security Framework |
System |
65-Bit Support |
未完待续...
希望我能把大部分IOS框架学习完并完成相关的Blog。
IOS SDK的架构相关推荐
- 集成支付宝钱包支付iOS SDK的方法与经验
没想到,支付宝的SDK是我目前用过的所有第三方SDK中最难用的一个了. 下载 首先,你要想找到这个SDK,都得费点功夫.现在的SDK改名叫移动支付集成开发包了,下载页面在 这里 的 "请点此 ...
- 支付宝钱包支付iOS SDK的方法
为什么80%的码农都做不了架构师?>>> 文档 压缩包里有两个相关文档 : <支付宝钱包支付接口开发包2.0标准版.pdf> <支付宝钱包支付接口开发包2.0 ...
- ios使用支付宝进行支付,注意事项 集成支付宝钱包支付iOS SDK的方法与经验。...
下载 首先,你要想找到这个SDK,都得费点功夫.现在的SDK改名叫移动支付集成开发包了,下载页面在 这里 的 "请点此下载集成开发包" Baidu和Googlep排在前面的支付宝开 ...
- 笔记|滴滴iOS客户端的架构,组件化,技术选型
笔记来源infoq:滴滴iOS客户端的架构演变之路 1,状态机,把订单中的阶段,例如:出租车的等待抢单.出租车的等待接驾.专车的等待抢单.专车的等待接驾,都当成一种独立的状态,每 个状态机只需要知道可 ...
- android融云自定义通知,Android SDK 体系架构 - 融云 RongCloud
Android SDK 体系架构和消息体系 本文档将详细介绍融云的 SDK 产品架构和消息体系,以便于您更深入的了解融云并更快速的开发自己的产品. 融云 SDK 系统架构 IMKit IMKit 的功 ...
- ios 集成html5 sdk,iOS SDK 快速集成
iOS SDK 快速集成 在您阅读此文档时,我们假定您已经具备了基础的 iOS 应用开发经验,并能够理解相关基础概念,最新版本的SDK 只支持 iOS9 及以上 iOS 系统版本. 注:此文档对之前的 ...
- TRTC Web SDK新架构设计解析(GMTC逐字稿)
腾讯实时音视频(Tencent Real-Time Communication,TRTC)是腾讯云基于 QQ 在音视频通话技术上的积累,它还结合了腾讯浏览服务 TBS WebRTC 能力与腾讯实时音视 ...
- 封装了一套WeCenter的IOS SDK
度过了忙碌且迷茫的2015年,迎来了的郁闷且彷徨的2016年. 与哥们商量做些什么,谈不上创业也不是项目,只是想让2016年不必如2015年一样迷茫,也慰藉一下2016年的彷徨. 方向么,考察了几个行 ...
- 【转】使用Xcode中的iOS SDK给iphone开发出第一个App程序
之前已经折腾过用Xcode开发OS X的程序了,现在继续折腾,用iOS SDK开发移动设备(iphone/ipad/ipod touch)的程序. 1.从iOS Developer Library中找 ...
最新文章
- 谈谈对分布式事务的一点理解和解决方案
- js获取元素节点对象
- ehcache缓存的详细配置
- js中的Promise简单总结(ES6)
- iPhone开发之第三方回调函数的使用方法
- 解决ueditor中没法动态配置imageurlprefix的方法
- 爬虫python能做什么-Python除了能做爬虫之外还能做什么?
- 升级的Electric Cloud平台增添了大型机和微服务功能
- uestc--758--P酱的冒险旅途
- LRU原理和Redis实现
- Qt界面语言设置(官方汉化)
- ThinkPad T440屏幕关闭之后硬盘狂响的解决方案
- 元宵节快乐 | 谈心
- 小技巧:163 VIP邮箱如何登录?VIP163邮箱的优势
- Web防火墙(WAF)是什么?和传统防火墙区别是什么?
- 【shell】【sed】在行前/行后插入一新行
- matlab用gui 画函数,MATLAB GUI ,2,使用MATLAB的函数来实现MATLAB GUI,part 1,图
- [USACO2.1]Healthy Holsteins 健康的荷斯坦奶牛 题解(DFS/BFS详解)
- Java 学习笔记 Day005 (补day5 的练习题)
- S0391-060使用CentOS6.x将82583v网卡down掉后网卡灯仍会亮起