UIApplication is a singleton object that represents the application.
|Signature||extern UIApplication* UIApp;|
|Available in||2.0 –|
The method +[UIApplication sharedInstance] is equivalent to using external symbol UIApp. The latter is often used in debugging environments such as Cycript for convenience.
UIApplication provides the -_addRecorder: and related methods to record user's events (as GSEvents). Event playback is also supported, so it can be used as a macro system.
|Available in||2.0 –|
This method will be called before the app gets suspended. By default UIApplication doesn't contain this method. You have to implement this if needed. You can change the settings here, to generate the initial state of next resumption. This technique is used in many built-in apps. The recognized keys are:
|UISuspendedStatusBarModeKey||Integer||The initial status bar mode.|
|UISuspendedStatusBarOrientationKey||Integer||The initial status bar orientation.|
|UISuspendedRoleID||String||? (kUISuspendedReturnToLastAppKey must be true for this to have any effects)|
|UISuspendedDefaultPNGKey||String||The file name of the default PNG image to use. For example, if you want to use Default-Landscape.png when the app starts, set this key to @"Default-Landscape".|
These values are written sent to SpringBoard with the GSSendApplicationSuspendedEvent function.
If this method returns NO, the app will just be backgrounded. You must set the UIApplicationExitsOnSuspend key to YES in the application's Info.plist file on 4.0 and later for the app to be truly backgrounded. Otherwise, the default multitasking system will shut down networking activities and timers, among other things.
Launching an application
To programmatically launch MobileSafari:
[[UIApplication sharedApplication] launchApplicationWithIdentifier:@"com.apple.mobilesafari" suspended:NO];
This is equivalent to using SBSLaunchApplicationWithIdentifier.
- Official reference: http://developer.apple.com/IPhone/library/documentation/UIKit/Reference/UIApplication_Class/Reference/Reference.html
- Extra header: http://github.com/kennytm/iphone-private-frameworks/blob/master/UIKit/UIApplication2.h