/System/Library/Frameworks

From The iPhone Wiki
Revision as of 19:32, 30 September 2010 by Nudge (talk | contribs)
Jump to: navigation, search

Frameworks are folders each containing a dynamic library and resources for that, library such as images and localization strings. All frameworks have the file extension .framework.

On the iPhoneOS there are 2 kinds of frameworks: public frameworks and private frameworks. Public frameworks are those ones endorsed by Apple and are allowed to be used in AppStore apps. Private frameworks are intended to be used only by original apps, and are more unstable against firmware changes, but many of the interesting features are in the private frameworks.

Public Frameworks

All public frameworks can be found inside /System/Library/Frameworks/.

Private Frameworks

All private frameworks can be found inside /System/Library/PrivateFrameworks/. The descriptions may be incorrect, since most frameworks are not documented after all.

Framework 2.x 3.x 4.x Prefix Language Description
Accelerate Yes Yes Yes -- -- High-performance vector-accelerated libraries [1]. Pulls in vecLib, which contains libLAPACK, libBLAS and libvDSP.
AccessorySupport No Yes Yes AS C Probably related to the new accessory API
AccountSettings Yes Yes Yes - ObjC (Mail) accounts managing.
AccountSettingsUI No Yes Yes - ObjC UI for managing accounts.
ActorKit No Yes Yes AK ObjC Actor model
AdminLite No Yes Yes - C Unknown. Provides only 2 functions: AdminLiteNVRAMSet and nvram_set.
AggregateDictionary No Yes Yes AD ?
AOSNotification Yes Yes Yes AOS C MobileMe Sync.
AppSupport Yes Yes Yes CP C, ObjC Distributed messaging, Phone number formatting, Geographical info, SQLite, etc.
Apple80211 Yes No No - C WiFi. On 3.0 the same functionality is provided by the MobileWiFi framework.
AppleJPEG Yes Yes No - C Create CGImage from JPEG.
ApplePushService No Yes Yes APS ObjC Apple push service. Manages connection to Apple's servers for push notifications.
AppleVXD375Framework No Yes No - C MPEG-4 hardware related (???)
AppleWirelessDiagnostics No No Yes - ? Related to the iOS Diagnostics app?
ApplicationScripting No Yes Yes - ObjC Simulator-only framework to allow users to use scripts (e.g. Javascript) to control the applications.
ArtworkCache Yes Yes Yes - C Process .artwork files
AssetLibraryServices No No Yes - ?
AXRuntime No Yes No AX C Supports accessibility (VoiceOver, etc.)
BluetoothManager Yes Yes Yes - ObjC Higher-level bluetooth manager using MobileBluetooth.
Bom Yes Yes Yes BOM C Filesystem and PKZip related (???)
Calculate Yes Yes Yes - C Compute results of mathematical equations (as a C string). See [2] for usage.
Calendar Yes Yes No Cal C, ObjC Manages the calendar (and events).
CalendarUI Yes Yes No - ObjC UI toolkits for the calendar.
Camera Yes Yes Yes - C Take and preview photos from camera.
CaptiveNetwork ? Yes Yes - ?
Celestial Yes Yes Yes AV, Fig C, ObjC (AV) Audio & video control; (Fig) Recoding, photo, video capturing and post-processing.
CertUI No No Yes - ?
ChatKit No Yes Yes CK ObjC UI toolkit for SMS and MMS messages.
Conference No No Yes ? FaceTime?
ContentIndex No Yes Yes CX C Document processing (???)
CoreDAV No No Yes - ?
CoreMedia Yes Yes No CM, Fig C ?
CoreSurface Yes Yes Yes - C Direct read/write of screen buffer.
CoreTelephony Yes Yes No CT, VM, Mms C, C++ (for Mms) Telephone services, Voice mailbox, MMS.
CoreTelephonyBypass ? ? Yes ? ?
CoreText No Yes No CT C Advanced font management.
CoreVideo Yes Yes No CV C Frame-by-frame video processing [3]
CrashReporterSupport Yes Yes Yes CR C Crash reporter support.
DataAccess Yes Yes Yes AS, CalDAV, DA ObjC Push mail/calendar support.
DataAccessExpress Yes Yes Yes DA ObjC Query/search push mails (???).
DataAccessUI ? ? Yes
DataDetectorsCore No Yes Yes DD C Match form fields to auto-fill fields (e.g. name, zip-code, etc.) or linkable texts (e.g. URL, phone number, etc.)
DataDetectorsUI No Yes Yes DD ObjC ?
DataMigration Yes Yes Yes DM C Migrate data on restoring to updated firmware.
DAVKit No Yes Yes AY, DAV, DK ObjC WebDAV support.
DeviceToDeviceManager No Yes Yes D2D C Device-to-device manager.
EAP8021X Yes Yes Yes EAP C Extensible Authentication Protocol for wireless network [4]
GameKitServices No No Yes For Game Center.
GeoServices No No Yes
GMM Yes Yes Yes GMM ObjC, C++ Google Mobile Maps.
GraphicsServices Yes Yes Yes GS C Event handling, capability check, colors and fonts, etc.
H2ISPServices No Yes Yes - C++ Camera related.
IAP Yes Yes Yes IAP C Manages accessory connections.
iCalendar No Yes Yes ICS ObjC, C++ iCalendar support.
Image Capture No No Yes
ImageIO Yes Yes Yes CG C Read/write images for common image formats. [5]
IMAVCore No No Yes
IMCore No No Yes
IOMobileFramebuffer Yes Yes Yes - C Framebuffer access.
IOSurface No Yes Yes - C Lower level interface of CoreSurface.
ITSync Yes Yes Yes - ObjC iTunes Sync.
iTunesStore Yes Yes Yes IS C, ObjC iTunes Music Store support.
iTunesStoreUI Yes Yes Yes SU ObjC UI toolkit for iTunes Music Store.
iWorkImport Yes Yes Yes - C Convert iWork documents to HTML.
JavaScriptCore Yes Yes Yes JS, WTF C, C++ WebKit's Javascript interpreter. Source code available in [6].
JSON No No Yes
LDAP No Yes Yes ber, ldap C Lightweight Directory Access Protocol (LDAP).
ManagedConfiguration Yes Yes Yes MC ObjC Manager for .MobileConfig profiles (?).
MapKit Yes No No MK ObjC Objective-C Wrapper and UI toolkit for maps. It becomes a public framework in 3.0.
MapSupport ? ? Yes
MBX2D Yes Yes Yes mbx C 2D (and a little 3D) image operations (blending, affine transform, etc.) on the GPU.
MBXConnect Yes No No mbx C Send commands to GPU. This framework is merged into MBX2D in 3.0.
MediaToolbox Yes Yes Yes Fig C Manages media file formats.
Message Yes Yes Yes - ObjC Manages emails.
MessageUI Yes No No - ObjC UI toolkit for composing emails. It becomes a public framework in 3.0.
MessageUtilities Yes No No - ObjC String utilities for email parsing. It is merged with the new framework "MIME" in 3.0.
MIME No Yes Yes - ObjC MIME encoder/decoder. This was split from the Message framwork from 2.x.
MobileBluetooth Yes Yes Yes BT C Manages bluetooth connections.
MobileDeviceLink Yes Yes Yes DL C Send and receive file on device, with encryption support.
MobileIcons ? ? Yes
MobileInstallation Yes Yes Yes - C Install apps.
MobileKeyBag ? ? Yes -
MobileMusicPlayer Yes Yes No PC, _MPlayer C Read and set properties about the global music player (current song, is Genius enabled, etc.).
MobileQuickLook No Yes No QL C View attachments.
MobileSoftwareUpdate ? ? Yes -
MobileSync Yes Yes Yes - C Sync calendars, bookmarks, mail accounts, notes and contacts with computer.
MobileWiFi No Yes Yes - C Obtain WiFi info, e.g. WEP/WPA, SSID, power output etc.
MobileWirelessSync ≥2.1 Yes Yes MWS C Sync calendars, bookmarks, notes and contacts with Mobile Me.
MultitouchSupport Yes Yes Yes MT C Multitouch support, e.g. pressure, proximity and path detection.
MusicLibrary Yes Yes Yes ML ObjC Access music library and photo album.
MusicLibraryDDB No Yes No - ObjC, C++ Looks similar to MusicLibrary, yet they are independent frameworks...
Notes No Yes Yes - C Read/write notes. It is split off from the Notes.app in 3.0 to support Spotlight.
OfficeImport Yes Yes Yes OI C Convert Microsoft Office documents into HTML.
PersistentConnection Yes Yes Yes PC C Maintain a persistent connection with another server. It also deals with power managements for this purpose.
PhotoLibrary Yes Yes Yes PL ObjC UI toolkit for the photo album, video list, the camera view and media publishing.
PhotoLibraryServices ? ? Yes
PortableStorage ? ? Yes
Preferences Yes Yes Yes PS ObjC Supports custom preference bundles.
ProofReader ? ? Yes
ProtocolBuffer No Yes Yes PB ObjC Provides support for Protocol Buffers. [7]
ScreenReaderCore No Yes ? SCRC ObjC Screen reader (read text at finger position).
Search No Yes ? SP ObjC Spotlight support.
SMSCTServer No Yes ? SMS ObjC Server to receive and interpret SMS.
SportsTrainer No Yes ? ST ObjC UI toolkit for Nike+iPod workouts.
SpringBoardServices Yes Yes ? SB, SBS C Provides Mach port and convenient functions for apps to communicate with the SpringBoard. Content includes get/set app properties, get/set watchdog assertions, get accelerometer events and UI orientation, get/set status bar appearance, and send/receive push notifications.
SpringBoardUI ≥2.1 Yes ? - ObjC Supports SBAwayView plugins (lock screen widgets).
Symbolication Yes Yes ? VMU ObjC Analyze Mach-O executables, task sampling, memory view.
TelephonyUI Yes Yes ? TP ObjC UI toolkit for telephone system.
TextInput No Yes ? UI, KB ObjC, C++ Keyboard input managers. This framework is split from UIKit from 2.x.
UIAccessibility No Yes ? - ObjC Accessibility server.
URLify Yes No ? CP ObjC Match URL in a string. Replaced by data detectors in 3.0.
VideoToolbox Yes Yes ? VT C Video compression/decompression, encoding/decoding for H.264 and MP4 Video.
VisualVoicemail Yes Yes ? VV ObjC Supports visual voicemail.
VoiceMemos No Yes ? RC ObjC UI toolkit for recording voice memos.
VoiceServices No Yes Yes VS ObjC Voice recognition.
WebCore Yes Yes ? DOM, WAK, WK ObjC, C++ WebKit's Rendering engine. Source code available in [8].
WebKit Yes Yes ? Web ObjC WebKit. UI toolkit to show a web page.
WebUI No Yes ? - ObjC Addition UI for Web views, e.g. Authentication view, certificate view, etc.
XMPP Yes Yes ? - C Extensible Messaging and Presence Protocol (XMPP / Jabber).
YouTube Yes Yes ? YT ObjC YouTube support.