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
SpringBoardServices.framework: Difference between revisions - iPhone Development Wiki

SpringBoardServices.framework: Difference between revisions

From iPhone Development Wiki
No edit summary
(cleanup.)
Line 5: Line 5:
}}
}}


[[SpringBoardServices.framework]] is a C (and partially Objective-C) library that allows you to invoke functions in {{applink|SpringBoard}} via IPC (Mach messages via MIG subsystem).  
[[SpringBoardServices.framework]] is a C (and partially Objective-C) library that allows you to invoke functions in {{applink|SpringBoard}} via IPC (Mach messages via [[MIG subsystem]]).  


SpringBoardServices is a framework that is constantly changing. Almost every firmware has something different. Make sure you check the version if you use any function here.  
SpringBoardServices is a framework that is constantly changing. Almost every firmware has something different. Make sure you check the version if you use any function here.  
Line 12: Line 12:


== SB functions ==
== SB functions ==
SB functions are the low-level functions that directly communicate with SpringBoard.  
{{main|SpringBoard.app/MIG_subsystem}}


=== SBGetPublicURLSchemes ===
SB functions are the low-level functions that directly communicate with SpringBoard via MIG subsystem. See  
{{Function signature|signature=void SBSCopyPublicURLSchemes(mach_port_t port, char** dataBytes, unsigned* length);|firmware=3.0 – 3.1}}
See [[#SBSCopyPublicURLSchemes|SBSCopyPublicURLSchemes]].
 
=== SBLocalizedApplicationNameForDisplayIdentifier ===
{{Function signature|signature=int SBLocalizedApplicationNameForDisplayIdentifier(mach_port_t port, const char* displayIdentifier, char** result);|firmware=2.0 – 3.1}}
See [[#SBSCopyLocalizedApplicationNameForDisplayIdentifier|SBSCopyLocalizedApplicationNameForDisplayIdentifier]].
 
=== SBShowCompassCalibrationHUD ===
{{Function signature|signature=void SBShowCompassCalibrationHUD(mach_port_t port, mach_port_t port2);|firmware=3.0 – 3.1}}
See [[#SBSCreateCompassCalibrationHUDAssertion|SBSCreateCompassCalibrationHUDAssertion]].


== SBS functions ==
== SBS functions ==
Line 33: Line 23:
Get the Mach port (send right) that can communicate with the SpringBoard. The return value can be used in the SB functions.
Get the Mach port (send right) that can communicate with the SpringBoard. The return value can be used in the SB functions.


=== SBSCopyIconImagePathForDisplayIdentifier ===
=== Application-related functions ===
{{Function signature|signature=CFStringRef SBSCopyIconImagePathForDisplayIdentifier(CFStringRef displayIdentifier);|firmware=2.0 – 3.1}}
{{Function signature|signature=CFStringRef SBSCopyIconImagePathForDisplayIdentifier(CFStringRef displayIdentifier);|firmware=2.0 – 3.1}}
Copy the path to the icon of the application represented by the display identifier.
=== SBSCopyLocalizedApplicationNameForDisplayIdentifier ===
{{Function signature|signature=CFStringRef SBSCopyLocalizedApplicationNameForDisplayIdentifier(CFStringRef displayIdentifier);|firmware=2.0 – 3.1}}
{{Function signature|signature=CFStringRef SBSCopyLocalizedApplicationNameForDisplayIdentifier(CFStringRef displayIdentifier);|firmware=2.0 – 3.1}}
Copy the localized application name for a display identifier. Returns <tt>NULL</tt> on error.
=== SBSCopyPublicURLSchemes ===
{{Function signature|signature=CFArrayRef SBSCopyPublicURLSchemes();|firmware=3.0 – 3.1}}
{{Function signature|signature=CFArrayRef SBSCopyPublicURLSchemes();|firmware=3.0 – 3.1}}
Obtain an array of public URL schemes. (e.g. <tt>(http, https, ...)</tt>)


<!--
=== SBSCreateCompassCalibrationHUDAssertion ===
=== SBSCreateCompassCalibrationHUDAssertion ===
[[Image:CompassHUD.png|right|thumb|The "Compass Interference" HUD.]]
[[Image:CompassHUD.png|right|thumb|The "Compass Interference" HUD.]]
Line 50: Line 34:
{{Function signature|signature=CFMachPortRef SBSCreateCompassCalibrationHUDAssertion();|firmware=3.0 – 3.1}}
{{Function signature|signature=CFMachPortRef SBSCreateCompassCalibrationHUDAssertion();|firmware=3.0 – 3.1}}
Show the "Compass Interference" HUD.
Show the "Compass Interference" HUD.
-->


{{Navbox Classes}}
{{Navbox Frameworks}}
{{Navbox Frameworks}}

Revision as of 18:13, 20 November 2009

SpringBoardServices.framework
Private Framework
Availabile ? – present
Class Prefix SB / SBS
Headers [headers.cynder.me]


SpringBoardServices.framework is a C (and partially Objective-C) library that allows you to invoke functions in SpringBoard via IPC (Mach messages via MIG subsystem).

SpringBoardServices is a framework that is constantly changing. Almost every firmware has something different. Make sure you check the version if you use any function here.


SB functions

SB functions are the low-level functions that directly communicate with SpringBoard via MIG subsystem. See

SBS functions

SBS functions are often a higher-level abstraction on top of SB functions. A typical feature is they do not require the port parameter.

SBSSpringBoardServerPort

Signature mach_port_t SBSSpringBoardServerPort();
Available in 2.0 – 3.1

Get the Mach port (send right) that can communicate with the SpringBoard. The return value can be used in the SB functions.

Application-related functions

Signature CFStringRef SBSCopyIconImagePathForDisplayIdentifier(CFStringRef displayIdentifier);
Available in 2.0 – 3.1
Signature CFStringRef SBSCopyLocalizedApplicationNameForDisplayIdentifier(CFStringRef displayIdentifier);
Available in 2.0 – 3.1
Signature CFArrayRef SBSCopyPublicURLSchemes();
Available in 3.0 – 3.1