iOS架构及其内部框架

作者: 张不二01 | 来源:发表于2017-02-01 08:26 被阅读142次
    iOS的四层结构:
    • 1.Cocoa Touch 最高层
    • 2.Media 多媒体层
    • 3.Core Services 服务层
    • 4.Core OS 最底层
    • iOS的基本构架
    • 详细
    1,Cocoa Touch

    该层提供了构建iOS应用的一些基本系统服务(如多任务、触摸输入、推送通知等)和关键框架如下:

    • AB: Address Book UI ,访问用户的联系人信息
    • EK: Event Kit UI ,访问用户的日历事件数据
    • GK:Game Kit,提供能够进行点对点的网络通信的API
    • AD :iAd,在应用中嵌入广告
    • MK:Map Kit,在应用中嵌入地图和地理信息编码等
    • MF:Message UI,提供与发送E-mail相关的API
    • TW:Twitter ,提供发送Twitter的接口
    • UI :UIKit,提供UI类
    2,Media

    Media层提供了图形、音频、视频和AirPlay技术,包括的框架如下:

    • AL:Assets Library,提供访问用户的图片和视频的接口
    • Audio:AudioToolbox,录制或播放音频、音频流以及格式转换
    • Audio, AU:AudioUnit ,提供使用内置音频单元服务,以及音频处理模块
    • AV,Audio Video Foundation,提供播放与录制音频和视频的Objective-C接口
    • Audio:Core Audio ,提供录制、制作、播放音频的C语言接口
    • CG :Core Graphics,提供Quartz 2D接口
    • CI:Core Image,提供操作视频和静态图像的接口
    • MIDI:Core MIDI,提供用于处理MIDI数据低层的API
    • CT:Core Text,提供渲染文本和处理字体的简单、高效的C语言接口
    • CV:Core Video,提供用于处理音频和视频的API
    • CG:Image I/O,包含一些读写图像数据类
    • GLK:GLKit 包含了构建复杂OpenGL ES应用的Objective-C实用类
    • MP:Media Player,包含全屏播放接口
    • AL:OpenAL,包含了OpenAL(跨平台的音频)的C语言接口
    • OpenGL ES EAGL, GL 包含OpenGL ES(跨平台的2D/3D图形库)的C语言接口
    • CA:Quartz Core,提供动画接口类
    • SK:Sprite Kit,是苹果提供的基于2D和2.5D游戏的开发引擎,可以开发iOS和Mac OS X下的游戏
    • SCN,Scene Kit,是一种高级别3D图形框架,能够帮助我们在APP中创建3D动画场景和特效
    3,Core Services

    该层提供了iCloud、应用内购买、SQLite数据库和XML支持等技术,包括的主要框架如下:

    • AC :Accounts,用于访问用户的Twitter账户(iOS 5之后才有此API)
    • AB:AddressBook,访问用户的联系人信息
    • AS:AdSupport,获得iAD广告标识
    • CF:CFNetwork,提供了访问Wi-Fi网络和蜂窝电话网络的API
    • NS:Core Data,提供管理应用数据的ORM接口
    • CF:CoreFoundation,它是iOS开发中最基本的框架,包括数据集
    • CL:Core Location,提供定位服务的API
    • CM:CoreMedia,提供AV Foundation框架使用的底层媒体类型。可以精确控制音频或视频的创建及展示
    • CM:CoreMotion,接收和处理重力加速计以及其他的运动事件
    • CT:CoreTelephony,提供访问电话基本信息的API
    • EK:Event Kit,访问用户的日历事件数据
    • NS :Foundation,为Core Foundation框架的许多功能提供Objective-C封装,是Objective-C最为基本框架
    • JS:JavaScriptCore.framework,提供了基于Objective-C语言封装的标准* JavaScript对象, 通过该框架可以实现Objective-C与JavaScript之间的相互调用
    • UT :MobileCoreServices,定义统一类型标识符(UTI)使用的底层类型
    • NK :Newsstand Kit,提供在后台下载杂志和新闻的API接口(iOS 5之后才有此API)
    • PK:Pass Kit,提供访问各种优惠券的API(iOS 6之后才有此API)
    • QL:QuickLook,该框架可以预览无法直接查看的文件内容,例如打开PDF文件
    • SL:Social,提供社交网络访问API,中国区提供新浪微博API(iOS 6之后才有此API)
    • SK:Store Kit,提供处理应用内置收费的资金交易
    • SC:SystemConfiguration,用于确定设备的网络配置(例如,使用该框架判断Wi-Fi或者蜂窝连接是否正在使用中) ,也可以用于判断某个主机服务是否可以使用
    • CK :Cloud Kit,开发iCloud应用的新型API
    • Health Kit HK 开发健康和运动等服务的API,在一个位置上访问共享的健康相关的讯息
    • HM:Home Kit,能够与用户家中连接的设备通信并进行控制
    4,Core OS

    该层提供了一些低级功能,开发中一般不直接使用它。该层包括的主要框架如下:

    • AC :Accelerate,访问重力加速计API
    • CB :Core Bluetooth,访问低能耗蓝牙设备API
    • EA :External Accessory 访问外围配件API接口
    • gss:Generic Security Services ,提供一组安全相关的服务
    • CSSM,Sec:Security,管理证书、公钥、私钥和安全信任策略API
    • LA: LocalAuthentication 通过用户指定的安全策略进行安全认证

    相关文章

      网友评论

        本文标题:iOS架构及其内部框架

        本文链接:https://www.haomeiwen.com/subject/jdbkittx.html