SpringBoardServices.framework: Difference between revisions

From iPhone Development Wiki
mNo edit summary
mNo edit summary
 
(7 intermediate revisions by 3 users not shown)
Line 5: Line 5:
}}
}}


[[SpringBoardServices.framework]] is a C (and partially Objective-C) library that allows you to invoke functions in the [[SpringBoard.app|SpringBoard]] via IPC (Mach messages).  
[[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.
 
<!-- Maybe split it out? -->
 
== SB functions ==
{{main|SpringBoard.app/MIG_subsystem}}
 
SB functions are the low-level functions that directly communicate with SpringBoard via MIG subsystem. See <!-- See what? -->
 
== 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 ===
{{Function signature|signature=mach_port_t SBSSpringBoardServerPort();|firmware=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 ===
{{Function signature|signature=CFStringRef SBSCopyIconImagePathForDisplayIdentifier(CFStringRef displayIdentifier);|firmware=2.0 – 4.0}}
{{Function signature|signature=CFStringRef SBSCopyLocalizedApplicationNameForDisplayIdentifier(CFStringRef displayIdentifier);|firmware=2.0 – 4.0}}
{{Function signature|signature=CFArrayRef SBSCopyPublicURLSchemes();|firmware=3.0 – 3.1}}
 
<!--
=== SBSCreateCompassCalibrationHUDAssertion ===
[[Image:CompassHUD.png|right|thumb|The "Compass Interference" HUD.]]
 
{{Function signature|signature=CFMachPortRef SBSCreateCompassCalibrationHUDAssertion();|firmware=3.0 – 3.1}}
Show the "Compass Interference" HUD.
-->
 
== Versions ==
{| class="wikitable"
|-
! Firmware
| 2.0    || 2.1    || 2.2    || 3.0  || 3.1    || 3.2
|-
! SourceCache version
| colspan="2" | N/A || 716.45 || 919.5 || 956.17 || 1065.74
|-
! dylib version
| colspan="6" | 1
|}
 


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

Latest revision as of 21:51, 29 June 2020

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 – 4.0
Signature CFStringRef SBSCopyLocalizedApplicationNameForDisplayIdentifier(CFStringRef displayIdentifier);
Available in 2.0 – 4.0
Signature CFArrayRef SBSCopyPublicURLSchemes();
Available in 3.0 – 3.1


Versions

Firmware 2.0 2.1 2.2 3.0 3.1 3.2
SourceCache version N/A 716.45 919.5 956.17 1065.74
dylib version 1