iOS开发:iOS的整体架构以及API介绍

时间:2022-12-26 17:37:41

  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介绍的更多相关文章

  1. iOS开发UI篇—UITableview控件简单介绍

    iOS开发UI篇—UITableview控件简单介绍 一.基本介绍 在众多移动应⽤用中,能看到各式各样的表格数据 . 在iOS中,要实现表格数据展示,最常用的做法就是使用UITableView,UIT ...

  2. iOS开发-iOS 10 由于权限问题导致崩溃的那些坑

     iOS开发-iOS 10 由于权限问题导致崩溃的那些坑 6月份的WWDC大会结束有一段时间了,相信很多开发者也是在努力工作的闲时用着Xcode8 Beta版学习着新的特性吧. 使用Xcode8写自己 ...

  3. iOS开发之组件化架构漫谈

    前段时间公司项目打算重构,准确来说应该是按之前的产品逻辑重写一个项目.在重构项目之前涉及到架构选型的问题,我和组里小伙伴一起研究了一下组件化架构,打算将项目重构为组件化架构.当然不是直接拿来照搬,还是 ...

  4. iOS开发--iOS及Mac开源项目和学习资料

    文/零距离仰望星空(简书作者)原文链接:http://www.jianshu.com/p/f6cdbc8192ba著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 原文出处:codecl ...

  5. iOS开发Swift篇—(一)简单介绍

    iOS开发Swift篇—简单介绍 一.简介 Swift是苹果于2014年WWDC(苹果开发者大会)发布的全新编程语言 Swift在天朝译为“雨燕”,是它的LOGO 是一只燕子,跟Objective-C ...

  6. ios开发——实用技术篇&Pist转模型详细介绍

    Pist转模型详细介绍 关于Plist转模型在iOS开发中是非常常见的,每开一一个项目或者实现一个功能都要用到它,所以今天就给大家讲讲Plist怎么转成模型数据, 前提:必须有一个Plist文件或者通 ...

  7. iOS开发----iOS 8的虚化效果

    在iOS 7中,一个重大的改变就是随处可见的虚化,这在通知中心和控制中心表现得尤为抢眼: 然而,当开发人员们着手去将类似的模糊效果增加自己的App的时候,他们会发现有相当严重的障碍. 那时苹果所界定的 ...

  8. iOS开发小技巧--利用苹果官方API播放视频(方法已经过时,了解一下)

  9. iOS开发——iOS国际化 APP内语言切换

    最近一个一直在迭代的老项目收到一份新的开发需求,项目需要做国际化适配,简体中文+英文.由于项目中采用了storyboard和纯代码两种布局方式,所以国际化也要同时实现.上网查了些资料,实现了更改系统语 ...

随机推荐

  1. 【转】Caffe初试(十)命令行解析

    caffe的运行提供三种接口:C++接口(命令行).Python接口和matlab接口.本文先对命令行进行解析,后续会依次介绍其它两种接口. caffe的C++主程序(caffe.cpp)放在根目录下 ...

  2. 如何创建一个AJAX-Enabled WCF Service

      原创地址:http://www.cnblogs.com/jfzhu/p/4041638.html 转载请注明出处   前面的文章中介绍过<Step by Step 创建一个WCF Servi ...

  3. javaScript中的页面传值

    function getURIParam(name) { var search = window.location.search; search = search.substring(1); if ( ...

  4. hdu 4035 2011成都赛区网络赛E 概率dp &ast;&ast;&ast;&ast;

    太吊了,反正我不会 /* HDU 4035 dp求期望的题. 题意: 有n个房间,由n-1条隧道连通起来,实际上就形成了一棵树, 从结点1出发,开始走,在每个结点i都有3种可能: 1.被杀死,回到结点 ...

  5. org&period;apache&period;hadoop&period;conf-Configured

    org.apache.hadoop.conf中的最后一个类,也是这个包中以后用的最频繁的一个,Configurable算是肉体,Configuration算是灵魂吧 package org.apach ...

  6. EOJ-1708&sol;&sol;POJ3334

    题意: 有一个连通器,由两个漏斗组成(关于漏斗的描述见描述). 现向漏斗中注入一定量的水,问最终水的绝对位置(即y轴坐标) 思路: 总体来说分为3种情况. 1.两个漏斗可能同时装有水. 2.只可能a漏 ...

  7. msvc2010生成的指令序列有问题,可能跟pgo有关

    正常序列 有问题序列 这段代码程序启动是执行,会导致崩溃 工程使用ltcg pgo,也就是说,第一次编译连接完成后,会跑一次profile,再执行连接器代码生成优化. 构建记录显示,ltcg已跑完,说 ...

  8. spring集成ActiveMQ居然要依赖这么多包

    做spring和ActiveMQ的集成,作maven依赖的时候有感(以前都不在乎,现在不一样了........省略) <!-- https://mvnrepository.com/artifac ...

  9. T-Pot平台Honeytrap蜜罐TCP&sol;UDP服务攻击探测及实现自动化邮件告警

    T-pot平台的Honeytrap可观察针对TCP或UDP服务的攻击,作为一个守护程序模拟一些知名的服务,并能够分析攻击字符串,执行相应的下载文件指令,当不产生TCP或者UDP协议的时候Honeytr ...

  10. 20165215 2017-2018-2 《Java程序设计》第5周学习总结

    20165215 2017-2018-2 <Java程序设计>第5周学习总结 教材学习内容总结 chapter7 Java支持在一个类中声明另外一个类,这样的类称作内部类,而包含内部类的类 ...