赞
踩
iOS系统框架
框架的原文是Frameworks,而Frameworks的本意,是指一个核心的支撑结构,任何东西都可以搭建在他之上,是一个通用的,可复用,具备特定功能的软件或是环境,他可能包含了代码库,API文件,或是一些工具的集合体。
Framework是一个有层级的目录,他将 动态代码库,nib files,图片文件,头文件和参考文件 全部封装成一个单一的资源包,多个程序之间可以同时共用它,并被程序调用去执行某个任务。
简单来说,对于Xcode而言,Framework就是一个文件后坠为 .framework的文件包,里面包含了与其相关的文件,程序在启动时会将它加载进内存。
Headers文件夹,里面是存放了大量的.h头文件,里面记录了这个Framework对外开放类的声明或是一些静态变量...等
Framework同名的二进至文件,它的类型在Finder显示是 Unix executable 可执行文件,大家可以理解为里面记录的就是系统的实现代码被编译后的产物。
Framewoek资源文件夹Resources
Foundation.framework / Headers
苹果官方为开发者准备了上百个稳定且成熟的框架,而大部分的框架都只提供了 Objective-C 跟 Swift的接口
所有的系统框架可以被分作四层(四个Layer),分别是 Cocoa Touch (触摸层),Media (媒体层),Core Services (核心服务层),以及 Core OS (操作系统层),
位于最底层的是CoreOS 核心操作系统层,这层提供的这些框架,已经是苹果提供的最靠近硬件的框架,通常情况下,这些功能不会直接应用于我们的应用程序,而是应用于其他框架。但是,在直接处理安全事务或和其他设备通讯的时候,则必须要应用到该层的框架。
可以利用CoreBluetooth 框架使用蓝牙和外部设备交互
Security框架提供管理证书,公钥私钥的策略
如果有复杂的计算可以使用Accelerate框架,委托硬件进行计算
第二层是提供应用程序所需要的基础系统服务的核心服务层 Core Service ,
媒体层里的框架功能就更明确了,是提供包括图行,音频,视频相关的技术支持
如果你想要开发一个短视频/直播,或是滤镜相机之类的App,那就会需要跟这一层的框架多打交道了。
最上一层 CocoaTouch层,大部分框架都与界面有关,也都具备自己特定的UI介面
其中包含了开发App的最重要的框架之一 UIKit,UIKit提供了大量的UI控件,例如按钮, Label,滚动列表,宫格视图,以及App的页面UIViewController 和 UIView试图
一个App的使用介面,跟页面之间的跳转都离不开UIKit,我们也会在后面的课程专门去介绍UIKit 介绍如何搭建App的页面。
其他像是MapKit地图框架 和 NotificationCenter 通知中心框架也是开发常用的。
SDK下的 /System/Library/Frameworks 对应所有的系统框架了,
设备上的iOS文件路经中,也有 /System/Library/Frameworks 文件夹,里面也放著对应的系统框架,并且是包含实现的也就是包含可执行文件。于是我们的App在启动时,也能链接到对应的Framework,并且正常执行
原文链接:https://juejin.cn/post/7128809789626253326
★文末名片可以免费领取音视频开发学习资料,内容包括(FFmpeg ,webRTC ,rtmp ,hls ,rtsp ,ffplay ,srs)以及音视频学习路线图等等。
见下方!↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。