Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198
Frameworks: Difference between revisions - iPhone Development Wiki

Frameworks: Difference between revisions

From iPhone Development Wiki
(Created page with 'Frameworks are bundles which contains a linkable library (usually a dylib), the associated resources and headers for development. There are so called “public” and [[Pri…')
 
m (Clarification)
(17 intermediate revisions by 7 users not shown)
Line 1: Line 1:
[[Frameworks]] are bundles which contains a linkable library (usually a dylib), the associated resources and headers for development.  
[[Frameworks]] are bundles that contain a linkable library (usually a dylib) and the associated resources and headers for development.  


There are so called “public” and [[PrivateFrameworks|“private”]] frameworks. The former are usually well documented and prepared for use by general developers, while the latter are (supposed to be) restricted for internal use only. Public frameworks can be found in <tt>/System/Library/Frameworks</tt>, and the private ones in <tt>/System/Library/PrivateFrameworks</tt>. Other than these artificial division, there are no difference between public and private frameworks.
There are “public” and [[PrivateFrameworks|“private”]] frameworks. The former are usually well documented and prepared for use by general developers, while the latter are (supposed to be) restricted for internal use only. Public frameworks can be found in <tt>/System/Library/Frameworks</tt>, and private ones in <tt>/System/Library/PrivateFrameworks</tt>. Other than this artificial division, there are no differences between public and private frameworks.


== Structure of a Framework ==
Since iOS 3.1, all default (public and private) libraries have been combined into a big cache file in <tt>/System/Library/Caches/com.apple.dyld/dyld_shared_cache_armvX</tt> (where X can be <tt>6</tt>, <tt>7</tt>, <tt>7s</tt>, <tt>64</tt> or <tt>64e</tt>) to improve performance. See [[dyld_shared_cache]]. The original libraries are no longer useful for non-on-device-developers, so they are eliminated from the system. The framework folders still contain other resources, such as localization strings.
Frameworks should have an extension of <tt>.framework</tt>. Headers, if any, should be stored in a subdirectory called <tt>Header</tt>.  
 
Frameworks have an extension of <tt>.framework</tt>. Headers, if any, can be found in the SDK, stored in a subdirectory in the framework called <tt>Headers</tt>.  


== References ==
== References ==
* [http://developer.apple.com/iphone/library/documentation/General/Conceptual/DevPedia-CocoaCore/Framework.html Apple's definition of frameworks].
* [http://developer.apple.com/iphone/library/documentation/General/Conceptual/DevPedia-CocoaCore/Framework.html Apple's definition of frameworks].
== List of frameworks ==
See [http://theiphonewiki.com/wiki//System/Library/Frameworks /System/Library/Frameworks on TheiPhoneWiki] for another list.
The following list reflects the state of public frameworks as of iOS 16.0:
* [[ARKit.framework]] (com.apple.ARKit)
* [[AVFAudio.framework]] (com.apple.afvaudio)
* [[AVFoundation.framework]] (com.apple.avfoundation)
* [[AVKit.framework]] (com.apple.avkit)
* [[AVRouting.framework]] (com.apple.avrouting)
* [[Accelerate.framework]] (com.apple.Accelerate)
* [[Accounts.framework]] (com.apple.accounts)
* [[AdServices.framework]] (com.apple.ap.AdServices)
* [[AdSupport.framework]] (com.apple.AdSupport)
* [[AddressBook.framework]] (com.apple.AddressBook)
* [[AddressBookUI.framework]] (com.apple.AddressBookUI)
* [[AppClip.framework]]
* [[AppIntents.framework]]
* [[AppTrackingTransparency.framework]]
* [[AssetsLibrary.framework]] (com.yourcompany.AssetsLibrary)
* [[AudioToolbox.framework]] (com.apple.audio.toolbox.AudioToolbox)
* [[AudioUnit.framework]] (com.apple.audio.units.AudioUnit)
* [[AuthenticationServices.framework]]
* [[AutomaticAssessmentConfiguration.framework]]
* [[BackgroundAssets.framework]]
* [[BackgroundTasks.framework]]
* [[BusinessChat.framework]]
* [[CFNetwork.framework]] (com.apple.CFNetwork)
* [[CHIP.framework]]
* [[Callkit.framework]]
* [[CarKey.framework]]
* [[CarPlay.framework]]
* [[CellularDataDiagnosticsSuite.framework]]
* [[Charts.framework]]
* [[ClassKit.framework]]
* [[ClockKit.framework]]
* [[CloudKit.framework]]
* [[ColorSync.framework]]
* [[Combine.framework]]
* [[Contacts.framework]]
* [[ContactsUI.framework]]
* [[CoreAudio.framework]] (com.apple.audio.CoreAudio)
* [[CoreAudioKit.framework]]
* [[CoreBluetooth.framework]]
* [[CoreData.framework]] (com.apple.CoreData)
* [[CoreFoundation.framework]] (com.apple.CoreFoundation)
* [[CoreGraphics.framework]]
* [[CoreHaptics.framework]]
* [[CoreImage.framework]]
* [[CoreLocation.framework]] (com.apple.corelocation)
* [[CoreLocationUI.framework]]
* [[CoreMIDI.framework]]
* [[CoreML.framework]]
* [[CoreMedia.framework]] (com.apple.CoreMedia)
* [[CoreMotion.framework]] (com.apple.coremotion)
* [[CoreNFC.framework]]
* [[CorePDF.framework]] (com.apple.CorePDF)
* [[CoreServices.framework]]
* [[CoreSpotlight.framework]]
* [[CoreTelephony.framework]] (com.apple.coretelephony)
* [[CoreText.framework]] (com.apple.CoreText)
* [[CoreTransferable.framework]]
* [[CoreVideo.framework]] (com.apple.CoreVideo)
* [[CreateML.framework]]
* [[CreateMLComponents.framework]]
* [[CryptoKit.framework]]
* [[CryptoTokenKit.framework]]
* [[DataDetection.framework]]
* [[DeveloperToolsSupport.framework]]
* [[DeviceActivity.framework]]
* [[DeviceCheck.framework]]
* [[DeviceDiscoveryExtension.framework]]
* [[DriverKit.framework]]
* [[EventKit.framework]] (com.apple.eventkit)
* [[EventKitUI.framework]] (com.apple.eventkitui)
* [[ExposureNotification.framework]]
* [[ExtensionFoundation.framework]]
* [[ExtensionKit.framework]]
* [[ExternalAccessory.framework]] (com.apple.ExternalAccessory)
* [[FamilyControls.framework]]
* [[FileProvider.framework]]
* [[FileProviderUI.framework]]
* [[Foundation.framework]] (com.apple.Foundation)
* [[GLKit.framework]]
* [[GSS.framework]]
* [[GameController.framework]]
* [[GameKit.framework]] (com.apple.GameKit)
* [[GameplayKit.framework]]
* [[GroupActivities.framework]]
* [[HealthKit.framework]]
* [[HealthKitUI.framework]]
* [[HomeKit.framework]]
* [[IOSurface.framework]]
* [[IOKit.framework]]
* [[IdentityLookup.framework]]
* [[IdentityLookupUI.framework]]
* [[ImageCaptureCore.framework]]
* [[ImageIO.framework]] (com.apple.ImageIO.framework)
* [[Intents.framework]]
* [[IntentsUI.framework]]
* [[JavaScriptCore.framework]]
* [[LinkPresentation.framework]]
* [[LocalAuthentication.framework]]
* [[LocalAuthenticationEmbeddedUI.framework]]
* [[MLCompute.framework]]
* [[ManagedSettings.framework]]
* [[ManagedSettingsUI.framework]]
* [[MapKit.framework]] (com.apple.MapKit)
* [[MediaAccessibility.framework]]
* [[MediaPlayer.framework]] (com.apple.MediaPlayer)
* [[MediaSetup.framework]]
* [[MediaToolbox.framework]]
* [[MessageUI.framework]] (com.apple.messageui)
* [[Messages.framework]]
* [[Metal.framework]]
* [[MetalKit.framework]]
* [[MetalPerformanceShaders.framework]]
* [[MetalPerformanceShadersGraph.framework]]
* [[MetricKit.framework]]
* [[MobileCoreServices.framework]] (com.apple.MobileCoreServices)
* [[ModelIO.framework]]
* [[MultipeerConnectivity.framework]]
* [[MusicKit.framework]]
* [[NaturalLanguage.framework]]
* [[NearbyInteraction.framework]]
* [[Network.framework]]
* [[NetworkExtension.framework]]
* [[NewsstandKit.framework]]
* [[NotificationCenter.framework]]
* [[OSLog.framework]]
* [[OpenAL.framework]] (com.apple.audio.OpenAL)
* [[OpenGLES.framework]] (com.apple.opengles)
* [[PDFKit.framework]]
* [[PHASE.framework]]
* [[PassKit.framework]]
* [[PencilKit.framework]]
* [[Photos.framework]]
* [[PhotosUI.framework]]
* [[PushKit.framework]]
* [[PushToTalk.framework]]
* [[QuartzCore.framework]] (com.apple.QuartzCore)
* [[QuickLook.framework]] (com.apple.QuickLook)
* [[QuickLookThumbnailing.framework]]
* [[RealityFoundation.framework]]
* [[RealityKit.framework]]
* [[ReplayKit.framework]]
* [[RoomPlan.framework]]
* [[SafariServices.framework]]
* [[SceneKit.framework]]
* [[ScreenTime.framework]]
* [[Security.framework]] (com.apple.Security)
* [[SensorKit.framework]]
* [[SharedWithYou.framework]]
* [[SharedWithYouCore.framework]]
* [[ShazamKit.framework]]
* [[Social.framework]]
* [[SoundAnalysis.framework]]
* [[Speech.framework]]
* [[SpriteKit.framework]]
* [[StoreKit.framework]] (com.apple.StoreKit)
* [[SwiftUI.framework]]
* [[System.framework]]
* [[SystemConfiguration.framework]] (com.apple.SystemConfiguration)
* [[TabularData.framework]]
* [[ThreadNetwork.framework]]
* [[Twitter.framework]]
* [[UIKit.framework]] (com.apple.UIKit)
* [[UniformTypeIdentifiers.framework]]
* [[UserNotifications.framework]]
* [[UserNotificationsUI.framework]]
* [[VideoSubscriberAccount.framework]]
* [[VideoToolbox.framework]]
* [[Vision.framework]]
* [[WatchConnectivity.framework]]
* [[WatchKit.framework]]
* [[WebKit.framework]]
* [[WeatherKit.framework]]
* [[WidgetKit.framework]]
* [[iAd.framework]] (com.apple.iAd)


{{Navbox Frameworks}}
{{Navbox Frameworks}}
{{Navbox Library}}
{{Navbox Library}}
[[Category:Directories in /System/Library]]
[[Category:Directories in /System/Library]]

Revision as of 06:22, 30 June 2022

Frameworks are bundles that contain a linkable library (usually a dylib) and the associated resources and headers for development.

There are “public” and “private” frameworks. The former are usually well documented and prepared for use by general developers, while the latter are (supposed to be) restricted for internal use only. Public frameworks can be found in /System/Library/Frameworks, and private ones in /System/Library/PrivateFrameworks. Other than this artificial division, there are no differences between public and private frameworks.

Since iOS 3.1, all default (public and private) libraries have been combined into a big cache file in /System/Library/Caches/com.apple.dyld/dyld_shared_cache_armvX (where X can be 6, 7, 7s, 64 or 64e) to improve performance. See dyld_shared_cache. The original libraries are no longer useful for non-on-device-developers, so they are eliminated from the system. The framework folders still contain other resources, such as localization strings.

Frameworks have an extension of .framework. Headers, if any, can be found in the SDK, stored in a subdirectory in the framework called Headers.

References

List of frameworks

See /System/Library/Frameworks on TheiPhoneWiki for another list.

The following list reflects the state of public frameworks as of iOS 16.0: