Introduction to IOS APIs
Transferred from: http://book.2cto.com/201307/27019.html
Apple's iOS API has changed a lot between different versions, and this book is based on iOS 6. In this section, we describe what APIs are available in iOS 6, how to use the Help documentation for these APIs, and how to use the official case.
2.6.1 API Overview
The overall architecture of iOS, shown in Figure 2-40, is divided into 4 layers of--cocoa touch layer, media layer, core services layer and core OS layer, which provides an overview of these 4 layers.
Figure 2-40 iOS Overall architecture diagram
1. Cocoa Touch Layer
This layer provides basic system services for building iOS apps (such as multitasking, touch input and push notifications, etc.) and key frameworks (see table 2-3).
Table 2-3 Cocoa Touch layer included frame
Framework |
Prefix |
Description |
Address Book UI |
Ab |
Access User's contact information |
Event Kit UI |
EK |
Accessing the user's calendar event data |
Game Kit |
Gk |
Provides an API for peer-to-peer network communication |
Iad |
AD |
Embed ads in your app |
Map Kit |
Mk |
Embed maps and geographic information encodings in your application |
Message UI |
Mf |
Provides APIs related to sending e-mail |
Twitter |
TW |
Provides an interface for sending Twitter |
UIKit |
Ui |
Providing UI Classes |
2. Media Layer
The media layer provides graphics, audio, video, and airplay technologies, including a framework as shown in table 2-4.
Table 2-4 The media layer includes the framework
Framework |
Prefix |
Description |
Assets Library |
AL |
An interface that provides access to the user's pictures and videos |
Audiotoolbox |
Audio |
Record or play audio, audio streams, and format conversions |
AudioUnit |
Audio,au |
Provides use of built-in audio unit services, as well as audio processing modules |
AV Foundation |
Av |
Provides a objective-c interface for playing and recording audio and video |
Core Audio |
Audio |
Provides a C-language interface for recording, making, and playing audio |
Core Graphics |
Cg |
Quartz 2D Interface Available |
Core Image |
Ci |
Provides an interface for manipulating video and still images |
Core MIDI |
Midi |
Provides APIs for processing low-level MIDI data |
Core Text |
Ct |
Simple, efficient C-language interface for rendering text and working with fonts |
Core Video |
CV |
Provides APIs for processing audio and video |
Image I/O |
Cg |
Contains some read/write image data classes |
Glkit |
Glk |
Contains OBJECTIVE-C utility classes for building complex OpenGL ES applications |
Media Player |
Mp |
Includes full-screen playback interface |
OpenAL |
AL |
C-Language interface with OpenAL (cross-platform audio) |
OpenGL ES |
Eagl,gl |
C-Language interface with OpenGL ES (cross-platform 2d/3d Graphics library) |
Quartz Core |
Ca |
Provides an animated interface class |
3. Core services Layer
This layer provides technologies such as icloud, in-app purchases, SQLite databases, and XML support, including the main frameworks shown in table 2-5.
Table 2-5 Core services layer includes the framework
Framework |
Prefix |
Description |
Accounts |
AC |
Twitter account for accessing users (this API is available after IOS 5) |
AddressBook |
Ab |
Access User's contact information |
Adsupport |
As |
Get IAD ad ID |
Cfnetwork |
Cf |
Provides an API to access Wi-Fi networks and cellular networks |
Core Data |
Ns |
Provides an ORM interface for managing application data |
Corefoundation |
Cf |
It is the most basic framework in iOS development, including datasets |
Core Location |
Cl |
API to provide location services |
CoreMedia |
Cm |
Provides the underlying media type used by the AV Foundation framework. Precise control of the creation and presentation of audio or video |
Coremotion |
Cm |
Receive and process gravity accelerometers and other motion events |
Coretelephony |
Ct |
Provides an API to access basic information about a phone |
Event Kit |
EK |
Accessing the user's calendar event data |
Foundation |
Ns |
Provides OBJECTIVE-C encapsulation for many features of the core Foundation framework and is the most basic framework for OBJECTIVE-C |
Mobilecoreservices |
Ut |
Define the underlying type used by the uniform type identifier (UTI) |
Newsstand Kit |
Nk |
API interface for downloading magazines and news in the background (IOS 5 only) |
Pass Kit |
Pk |
API to access various coupons (IOS 6 is available after this API) |
QuickLook |
Ql |
The framework can preview file content that cannot be viewed directly, such as opening a PDF file |
Social |
Sl |
Social network access API available in China with Sina Weibo API (this API is available after IOS 6) |
Store Kit |
Sk |
Provides money transactions to handle application-built charges |
SystemConfiguration |
Sc |
Used to determine the network configuration of a device (for example, using the framework to determine whether Wi-Fi or cellular connections are in use), or to determine whether a host service can be used |
4. Core OS Layer
This layer provides some low-level functionality, which is generally not used directly in development. The main framework included in this layer is shown in table 2-6.
Table 2-6 Core OS layer included framework
Framework |
Prefix |
Description |
Accelerate |
AC |
Accessing the Gravity Accelerometer API |
Core Bluetooth |
Cb |
Accessing the low energy Bluetooth device API |
External Accessory |
Ea |
Accessing the Peripheral Accessory API interface |
Generic Security Services |
Gss |
Provide a set of security-related services |
Security |
Cssm,sec |
Manage certificates, public keys, private keys, and security trust policy APIs |
IOS API Overview