Apple现行公开的framework简介

宗政鸿志
2023-12-01

App Framework(11)

AppKit,Bundle Resources,Foundation,Swift,SwiftUI,TVML,TVMLKit,TVMLKit JS,TVUIKit,UIKit,WatchKit

AppKit

macOS

Bundle Resources

all,用于App,framework,plugin bundle内的资源定位

Foundation

all

Swift

Xcode,用支持swift

SwiftUI

all,iOS13+,新的界面构建方式

TVML

tvOS,支持类似XML文件用于tvOS App开发

TVMLKit

tvOS

TVMLKit JS

tvOS,支持js文件用于tvOS App开发

TVUIKit

TV上面的UIKit

UIKit

iOS

WatchKit

watchOS

Graphics and Games(24)

AGL

macOS,用于创建OpenGL渲染上下文

ARKit

iOS11+,使用摄像头和传感器为App和游戏提供现实增强体验

ColorSync

macOS,无文档

Core Animation

all,提供图层和动画

Core Graphics

all,CPU绘制能力

Core Image

all,图像、视频处理和识别

Game Controller

all,在游戏中支持游戏控制器硬件

GameKit

all,游戏相关

GameplayKit

all,游戏相关

GLKit

all,OpenGL(ES)的封装

Image I/O

all,可以读写大多数图片文件格式,管理颜色,访问图片的元数据

Metal

all,用于高级3D图形渲染和数据并行计算

Metal Performance Shaders

all,Metal shaders

MetalKit

all,帮助创建Metal App。提供专门的View,从很多资源中加载texture,高效处理model I/O提供的模型文件

Model I/O

all,为与Metal kit,GLKit和SceneKit打交道的模型文件,提供导入、导出和处理的设施。

OpenGL ES

all,移动版OpenGL

PDFKit

iOS11+,MacOS,展示和处理PDF文件

PencilKit

iOS13+,MacOS,捕捉pencil的透明输入,并且在App里展示

Quartz

macOS,浏览、编辑和保存图片

RealityKit

iOS13+,MacOS,在你的现实增强App里模拟和渲染3D内容

ReplayKit

iOS,TVOS,屏幕录制和音频录制(App和麦克风)

SceneKit

all,创建3D游戏和在App里添加3D内容

SpriteKit

all,创建2D游戏和在App里添加2D内容

Vision

all,使用计算机视觉算法对输入的图片和视频进行一些列处理

App Services(59)

Accounts

all,帮助用户在App内访问和管理外部账户,不需要输入登陆信息。

AddressBook

已废弃的联系人数据库框架

AddressBookUI

已废弃的联系人UI框架

AdSupport

为应用提供广告标识,和一个提示该设备是否正在使用限制广告追踪的的标志。

App Store Receipts

苹果网络服务

App Store Server Notifications

苹果网络服务

ApplicationServices

MacOS,遗留的服务

BackgroundTasks

iOS 13.0+,请求系统唤醒在后台的应用,以执行一些任务

Business Chat

iOS 11.3+,MacOS,使用Message App和客户直接交谈。需要一些配置。

Business Chat REST API

Business Chat的服务接口

CallKit

为你App的VoIP服务提供系统的呼叫UI,并协调系统和其他App。

CareKit

管理用户健康

CarPlay

车载相关

ClassKit

教育相关

ClockKit

watchOS,在手表上展示App特定数据

CloudKit

在iCloud上存储结构化的应用以及用户数据,以便为你所有的用户在不同设备间进行共享或者是所有用户共享公共区域的数据。

Combine

异步事件处理框架

Contacts

新的联系人数据库

ContactsUI

新的联系人UI

Core Data

对象数据库

Core Foundation

C版本Found

Core Location

定位相关

Core ML

机器学习框架

Core Motion

传感器相关

Core Spotlight

Spotlight搜索功能

Core Text

文本布局

Create ML

macOS 10.14+,为用户创建机器学习模型

DeviceCheck

all,iOS 11.0+,使用DeviceCheck API与服务器到服务器API结合使用,您可以设置和查询每个设备的两位数据,同时保持用户的隐私。 您可以使用这些数据来识别已经利用您提供的促销优惠的设备,或者标记您认定为欺诈的设备。 DeviceCheck API还可以让您验证您收到的token是否来自已下载应用程序的真实Apple设备。

EventKit

事件数据库

EventKitUI

事件UI

FileProvider

文件提供者扩展,其他App可以访问由你的App存储和管理的文件和目录。

FileProviderUI

为文档浏览器上下文按钮提供action

HealthKit

访问和分享健康数据

HomeKit

家庭智能设备相关

iAd

广告相关

JavaScriptCore

all,提供js执行环境

MapKit

地图相关

Messages

创建Message扩展

MessageUI

App内发送邮件

MultipeerConnectivity

支持点对点连接和附近设备发现

Natural Language

自然语言处理

NewsstandKit

不重要

NotificationCenter

创建和管理Today上的部件

PassKit (Apple Pay and Wallet)

Apple Pay相关

PreferencePanes

macOS,将App设置集成到系统设置中

PushKit

在收到一些通知,例如手表表盘数据,文件提供者更新(去更新文件提供者扩展的内容)或者VoIP,唤起或者启动你的App去进行处理。和系统通知一样,底层都是苹果推送。

QuickLook

提供文件预览

QuickLookThumbnailing

MacOS,iOS 13.0+,为常见文件类型创建缩略图,为你的App添加一个缩略图扩展,以便其他App可以为你的文件类型创建缩略图。

SafariServices

用于在你的App里集成Safari行为或者增强Safari

SiriKit

处理由用户通过Safari或者map发起的,对你提供的服务提出的请求。相关内容: Intents app extension用于处理请求,Intents UI app extension用于展示结果。

SMS and Call Reporting

MacOS,iOS 11.0+,包括Message过滤扩展,垃圾短息和广告电话报告扩展。

Social

社交网络服务

Speech

音频识别及提供结果可信度

StoreKit

内购、apple music、推荐和评价。

TVServices

tvos,在TV屏幕顶部架子区域显示应用描述和内容,帮助用户发现你的应用

UserNotifications

新的推送框架

UserNotificationsUI

定制推送样式

WatchConnectivity

在App和配对的watchOS App间通信

WebKit

WKWebView

Media(27)

Apple News(不重要)

Apple Search Ads(不重要)

AssetsLibrary

iOS,媒体库访问,已废弃

AudioToolbox

中级音频框架

AudioUnit

低级音频框架

AVFoundation

all,提供音视频的捕捉、处理、合成、控制、导入导出。

AVKit

all,提供视图级的媒体回放、用户交互、章节导航和字幕支持。

Core Audio

与音频硬件交互

Core Audio Kit

为音频单元提供用户界面

Core Audio Types

all,iOS13+,使用专门的数据与音频流、复杂的缓存和音视频时间戳交互

Core Haptics

iOS 13.0+,用于定制触控反馈

Core Media

使用一些关键数据类型来表示基于时间的音视频素材

Core MIDI

核心乐器数字接口

Core Video

使用一种基于管线化的API来实现数字视频的处理,支持mental和OpenGL

HTTP Live Streaming

hls服务协议

ImageCaptureCore

iOS 13.0+,MacOS,浏览和控制媒体设备
可以发现链接的相机和扫描仪
浏览和修改连接相机上的文件、文件夹和元数据
直接控制连接的相机进行拍照
控制连接的扫描仪进行扫描

iTunesLibrary

MacOS,

Media Player

all,在你的App内寻找和播放歌曲,音频播客,音频书籍。

MediaAccessibility

all,协调隐含字幕的展示

MediaLibrary

macOS,提供用户多媒体内容的只读访问

PhotoKit

all,提供Photos App内图片,视频的管理,也包括iCloud和live photo。

Professional Video Applications

为Final Cut Pro X提供增强的能力

QTKit

macOS,已废弃

ScreenSaver

macOS,制作屏保

SoundAnalysis

all,iOS 13.0+,分析音频文件或者音频流,并进行分类,例如大笑或者鼓掌。

VideoToolbox

all,提供硬件加速的编解码能力

VisionKit

iOS 13.0+,使用iOS摄像头扫描文档,类似notes app里的功能

Web(13)

主要是提供一些数据接口。不重要。
App Store Connect API
Apple Music API
Apple Pay on the Web
CloudKit JS
LinkPresentation
LivePhotosKit JS
MapKit JS
Maps Web Snapshots【Beta】
MusicKit JS
Safari Extensions JS
Sign in with Apple JS
Sign in with Apple REST API
WebKit JS

Developer Tools(11)

Automator

自动化流程工具

Code Diagnostics

InstallerJS

Playground Support

PlaygroundBluetooth

ScriptingBridge

MacOS,让其他应用可以通过AppleScript来操作本应用

Swift Packages

Swift Playgrounds

Xcode

XcodeKit

编写Xcode插件

XCTest

单元测试

System(62)

Accelerate

进行大规模的数学计算和图像计算。
该文档描述了加速框架,其中包含了用于矢量和矩阵数学的C API,数字信号处理,大量数据处理和图像处理。

BNNS
使用先前获得的训练数据来实现和运行神经网络。

Quadrature
在有限或无限区间上逼近函数的定积分。

BLAS
Basic Linear Algebra Subprograms
苹果的基本线性代数子程序(BLAS)的实现。

Sparse Solvers
求解系数矩阵稀疏的方程组。

vDSP
digital signal processing.
使用这些功能进行数字信号处理。

vecLib
对大向量进行计算。

vImage
使用CPU的矢量处理器来处理大的图像。

simd
对小矢量和矩阵进行计算。

Apple CryptoKit

all,iOS 13.0+,提供了场景的密码学操作

AuthenticationServices

all,iOS 12.0+
允许用户使用Apple ID登陆你的服务
让用户能在在登陆流程中查看存储的密码
在App和浏览器之间共享数据
在企业APP内提供单点登录体验

CFNetwork

all,低级的网络框架

Collaboration

macOS 10.5+

Compression

all,iOS 9.0+,提供无损数据压缩算法。支持缓冲区压缩和流式压缩。

Core Bluetooth

蓝牙

Core NFC

NFC

Core Services

大杂烩,包括apple events,backup core,dictionary services,file system events,launch services,file metadata,os services,search kit,carbon core

Core Telephony

提供蜂窝网络服务提供商信息,标识,是否允许VoIP等。没啥卵用的一个框架。

Core WLAN

查询AirPort接口,选择无线网络

CryptoTokenKit

all,iOS 13.0+,访问密码令牌和其中存储的加密数据

DarwinNotify

发送和接收Darwin通知

Device Management

MDM相关网络服务

DiskArbitration

MacOS,提供注册磁盘挂载和卸载通知的机制

Dispatch

GCD

dnssd

all,发现、发布和解析在本地或者广域网的网路服务。

DriverKit

MacOS,开发用户态运行的硬件驱动

EndpointSecurity

MacOS,开发增强用户安全的系统扩展

ExceptionHandling

macOS,监视和调试代码中的异常情况NSExceptionHandler。

ExecutionPolicy

ExternalAccessory

all,与通过lightning或者蓝牙连接的外设进行通信

FinderSync

macOS,通过增加角标,便捷菜单项和工具栏按钮增强Finder用户界面

ForceFeedback

macOS,控制附加到系统的力反馈硬件(游戏杆、游戏板),开发与该硬件通信的插件。

FWAUserLib

MacOS,火线音频相关

GSS

HIDDriverKit

MacOS,为用户界面设备开发驱动,例如键盘,指针设备,数字化器(例如笔和触摸板)

Hypervisor

MacOS,在轻量的设备管理之上构建虚拟化解决方案

InputMethodKit

MacOS,开发输入法

IOBluetooth

macOS,获得对蓝牙设备的用户态访问

IOBluetoothUI

macOS,展示蓝牙配对界面

IOKit

all,获得硬件设备和驱动的用户态访问

IOSurface

all,iOS 11.0+,在多进程间共享硬件加速的缓存数据(帧缓存和纹理)。管理图像内存更高效。

IOUSBHost

Kernel

MacOS,开发内核硬件驱动和内核扩展

LatentSemanticMapping

MacOS,潜在语义分析框架,将文本和其他基于口令的内容分类到开发者定义的分组中。

LocalAuthentication

all,使用生物特征或者密码验证用户

MetricKit

iOS 13.0+,提供有关系统捕获的应用程序的设备上的功能和性能指标,您可以使用它来提高应用程序的性能

MobileCoreServices

all,统一类型标识UTI相关

Network

all,ios 12+,使用传输端口和安全协议建立连接,进行数据传输和接收。直接和TCP,UDP,TLS打交道。HTTP应该使用更高级的接口。

NetworkExtension

all,定制和扩展核心网络特性:
改变系统的WiFi配置
将你的App同热点网络子系统进行交互(Hotspot helper)
使用内建的vpn协议(个人vpn)或自定义的vpn协议,创建和管理vpn配置
实现一个设备上的内容过滤器
实现一个设备上的DNS代理

NetworkingDriverKit

开发以太网设备驱动

Objective-C Runtime

oc runtime API

OpenDirectory

macOS,验证用户,在开放目录和LDAP目中中搜索联系人信息。

os

all,发起活动追踪和同意的日志操作,使调试时问题诊断更容易。

OSLog

macOS,用于读取历史数据的统一日志系统

Security

all,保护数据安全和控制对应用的访问。
建立用户身份,并选择性授权访问资源
加密数据,包括磁盘中和网络传输中的。
确保针对特定目的而执行的代码有效性。

SecurityFoundation

macOS,限制用户对你应用特定功能的访问。SFAuthorization

SecurityInterface

MacOS,为安全特性,例如验证,访问数字证书和访问keychain数据,提供用户界面元素。

SerialDriverKit

ServiceManagement

all,iOS 12.1+,加载和去除启动服务。在应用内读取和修改launchd字典。

simd

SystemConfiguration

all,允许应用访问设备的网络配置设定。判定设备的网络可用性,例如WiFi或者蜂窝连接是否活动。

SystemExtensions

macOS,安装和管理扩展系统能力的用户态代码。

USBDriverKit

开发基于USB的设备驱动

USBSerialDriverKit

为连接到Mac的串行IO设备开发驱动

vmnet

macOS,在虚拟机上同网络接口连接,并且从中读写数据包。

XPC

macOS,低级的进程间通信机制

总结

持续更新中

 类似资料: