Frameworks

From iPhone Development Wiki

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: