iOS开发:iOS的整体架构以及API介绍
iOS的整体架构分为4层——Cocoa Touch层、Media层、Core Services层和Core OS层,下面概要介绍一下这4层。
- Cocoa Touch:构建iOS应用的一些基本系统服务,如多任务,触摸输入和推送通知
- Address Book UI : 前缀为AB,访问用户的联系人信息
- Event Kit UI :前缀为EK,访问用户的日历事件数据
- Game Kit :前缀GK,提供能够进行point to point网络通信的API
- iAd:前缀AD,广告sdk
- Map Kit:前缀MK,地图SDK
- Message UI:前缀MF,Email相关SDK
- Twitter:前缀TW,Twitter的接口
- UIKit:前缀UI,提供UI类
- Media:提供图形,音频,视频和AirPlay技术。
- Assets Library :AL,提供访问用户的图片和视频的接口
- AudioToolbox:Audio,录制或者播放音频/流以及格式转换
- AudioUnit:Autio,AU,提供内置音频服务端元,以及音频处理摩模块
- AV Foundation:AV,提供播放、录制视频的oc接口
- Core Audio:Audio,录制、制作、播放音频的C语言接口
- Core Graphics:CG,提供Quartz 2D接口
- Core Image :CI 提供操作视频和静态图像的接口
- Core MIDI:MIDI MIDI数据底层的API
- Core Text:CT 渲染文本,处理字体,的c语言接口
- Core Video:CV 处理音频和视频的API
- Image I/O:CG,包含一些读写图像的数据类
- GLKit : GLK 构建复杂OpenGL ES应用的oc会用类
- Media Player:MP 包含全屏播放接口
- OpenAL:AL 跨平台音频 c语言接口
- OpenGL ES:EAGL,GL 跨平台的2D/3D图形库 c语言接口
- Quartz Core:CA ,提供动画接口类
- Sprite Kit:SK ,给予2D和2.5D游戏的开发引擎,可开发iOS和Mac OS游戏
- Core Services:提供iCloud、应用内购买、SQLite数据库和XML支持等技术
- Accounts:AC 用于访问TWitter账户(iOS 5 later)
- AddressBook:AB 访问用户的联系人信息
- AdSupport:AS 获得iAD广告标示
- CFNetwork:CF wifi网络和移动网络
- Core Data:NS 提供管理应用数据的ORM接口
- CoreFoundation:CF iOS最基本的框架,包括数据集
- Core Location:CL 定位服务的API
- CoreMedia:CM 提供AV Foundation框架使用的底层媒体类型,可精确的控制音频/视频的创建以及展示
- CoreMotion:CM 接收和处理重力加速器以及其他运动时间
- CoreTelephony:CT 手机基本信息的API
- Event Kit:EK 访问用户的日历事件数据
- Foundation:NS 为Core Foundation框架的许多功能提供oc封装,是oc的基本框架
- JavaScriptCore.framework:JS 提供机遇oc语言封装的标准js对象,可实现oc和js之间的相互调用
- MobileCoreService:UT 定义统一类型表示服(UTI)使用的底层类型
- Newsstand Kit: NK 后台下载杂事和新闻等api接口(iOS 5 later)
- Pass Kit:PK 访问个钟优惠卷的api(iOS 6 later)
- QuickLook :QL 预览无法直接查看的文件内容,例如打开pdf文件
- Social:SL社交网络访问api,可做微博分享功能(iOS 6 later)
- Store Kit:SK 处理应用内置收费的资金交易
- SystemConfiguration:SC 确定设备的网络配置
- Core OS:提供一些低级功能,开发中一般不直接使用
- Accelerate:AC 访问重力加速器的API
- Core Bluetooth :CB 低能耗蓝牙设备的API
- External Accessory:EA 外围配件的API接口
- Generic Security Services:gss 提供一组安全相关的服务
- Security:CSSM,Sec 管理证书、公钥和安全信任策略API
iOS开发:iOS的整体架构以及API介绍的更多相关文章
- iOS开发UI篇—UITableview控件简单介绍
iOS开发UI篇—UITableview控件简单介绍 一.基本介绍 在众多移动应⽤用中,能看到各式各样的表格数据 . 在iOS中,要实现表格数据展示,最常用的做法就是使用UITableView,UIT ...
- iOS开发-iOS 10 由于权限问题导致崩溃的那些坑
iOS开发-iOS 10 由于权限问题导致崩溃的那些坑 6月份的WWDC大会结束有一段时间了,相信很多开发者也是在努力工作的闲时用着Xcode8 Beta版学习着新的特性吧. 使用Xcode8写自己 ...
- iOS开发之组件化架构漫谈
前段时间公司项目打算重构,准确来说应该是按之前的产品逻辑重写一个项目.在重构项目之前涉及到架构选型的问题,我和组里小伙伴一起研究了一下组件化架构,打算将项目重构为组件化架构.当然不是直接拿来照搬,还是 ...
- iOS开发--iOS及Mac开源项目和学习资料
文/零距离仰望星空(简书作者)原文链接:http://www.jianshu.com/p/f6cdbc8192ba著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 原文出处:codecl ...
- iOS开发Swift篇—(一)简单介绍
iOS开发Swift篇—简单介绍 一.简介 Swift是苹果于2014年WWDC(苹果开发者大会)发布的全新编程语言 Swift在天朝译为“雨燕”,是它的LOGO 是一只燕子,跟Objective-C ...
- ios开发——实用技术篇&Pist转模型详细介绍
Pist转模型详细介绍 关于Plist转模型在iOS开发中是非常常见的,每开一一个项目或者实现一个功能都要用到它,所以今天就给大家讲讲Plist怎么转成模型数据, 前提:必须有一个Plist文件或者通 ...
- iOS开发----iOS 8的虚化效果
在iOS 7中,一个重大的改变就是随处可见的虚化,这在通知中心和控制中心表现得尤为抢眼: 然而,当开发人员们着手去将类似的模糊效果增加自己的App的时候,他们会发现有相当严重的障碍. 那时苹果所界定的 ...
- iOS开发小技巧--利用苹果官方API播放视频(方法已经过时,了解一下)
- iOS开发——iOS国际化 APP内语言切换
最近一个一直在迭代的老项目收到一份新的开发需求,项目需要做国际化适配,简体中文+英文.由于项目中采用了storyboard和纯代码两种布局方式,所以国际化也要同时实现.上网查了些资料,实现了更改系统语 ...
随机推荐
- android 讯飞语音识别(离线)注意事项
讯飞语音识别:使用注意事项:mainfest.xml中一定要记得权限写进去21001:我的情况是没有写SpeechApp类,并且需要在application中注册:20005:无匹配结果23300:本 ...
- android 播放语音文件出现 prepare failed ,不能下载amr文件
amr文件的路径正确,但是android 却不能播放出来. 调试发现时根本就没有下载下来 原因: IIS服务器不允许下载该文件,需要配置MIME 解决方法: 进入IIS目录,配置MIME
- Http之Get/Post请求区别
Http之Get/Post请求区别 1.HTTP请求格式: <request line> <headers> <blank line> [<request-b ...
- 2436: [Noi2011]Noi嘉年华 - BZOJ
Description NOI2011 在吉林大学开始啦!为了迎接来自全国各地最优秀的信息学选手,吉林大学决定举办两场盛大的 NOI 嘉年华活动,分在两个不同的地点举办.每个嘉年华可能包含很多个活动, ...
- HTML5网页制作教程:HTML5块级链接
网页制作Webjx文章简介:Web 标准中处处充满了打脸行为,这条规则现在已经失效了!在那篇文章发布一个月后,HTML5doctor 发表了 “Block-level” links in HTML5, ...
- Reactjs相比较原生方案是绝对的快吗?哪些情况下React有优势
作者:尤雨溪链接:http://www.zhihu.com/question/31809713/answer/53544875来源:知乎著作权归作者所有,转载请联系作者获得授权. 1. 原生 DO ...
- 剑指offer--面试题13
题目:以O(1)的时间复杂度删除单链表中的某个节点 自己所写代码如下: //以O(1)时间删除链表节点 //要求:单向链表,头指针,待删节点指针 //链表节点 struct ListNode { in ...
- NYOJ-456 邮票分你一半 AC 分类: NYOJ 2014-01-02 14:33 152人阅读 评论(0) 收藏
#include<stdio.h> #define max(x,y) x>y?x:y int main(){ int n,x,y; scanf("%d",& ...
- vs2010中臃肿的ipch和sdf文件
使用VS2010建立C++解决方案时,会生成SolutionName.sdf和一个叫做ipch的文件夹,这两个文件再加上*.pch等文件使得工程变得非常的庞大,一个简单的程序都会占用几十M的硬盘容量, ...
- POJ2104 K-th Number Range Tree
又是区间第k大,这次选择这道题是为以后写线段树套平衡树铺路的.Range Tree可以理解成线段树套vector吧,相当于每个结点多存了对应区间的一个排好序的序列.画一下就会知道空间的消耗是nlogn ...