SpringBoard
SpringBoard is the standard application that manages the iPhone's home screen. Other tasks include starting WindowServer, launching and bootstrapping applications and setting some of the device's settings on startup.
History
In 2008, with Apple's release of iPhone OS 1.1.3 and the January App Pack, the SpringBoard underwent some substantial changes. Holding a finger on any application for a few seconds causes all of the icons to wiggle. From this view, you can rearrange your icons, delete web apps and web clips, and create multiple pages by dragging an application to the side of the screen. If the Home button is pressed, the icons will stop wiggling and apps can be opened again.[1]
In July 2008, third-party applications were introduced with iPhone OS 2.0. These applications are installed through the App Store and deleted with the traditional "wiggle mode" method.
In June 2009, in iPhone OS 3, Spotlight Search was added to the SpringBoard. This allowed the user to search for applications and other files stored in the iPhone.[2]
In June 2010, in iOS 4, home screen wallpapers were introduced to the SpringBoard. Folders were introduced as well: dragging an application on top of another application while in "wiggle mode" will result in a folder being created. After that, more applications may be added to that folder by dragging an application on top of the folder. Applications can be removed from a folder by simply dragging it out into the main home screen. Folders can be removed by removing every application from the folder.
On jailbroken devices, unsigned applications (applications installed through Cydia) cannot be deleted by the traditional method of holding a finger on the application and selecting delete as they are installed as System applications. Instead, they need to be removed through Cydia, unless CyDelete is installed, which allows for that method to be used.
Researchers found that on mobile devices users organize icons on their SpringBoards mainly based on usage-frequency and relatedness of the applications, as well as for reasons of usability and aesthetics.[3]
Jailbroken devices
Display of icons
The layout of the SpringBoard is in a property list file /var/mobile/Library/SpringBoard/IconState.plist.
In iPhone OS/iOS versions before 1.1.3, jailbreaking patched the SpringBoard for displaying third-party applications.
In iPhone OS/iOS versions 1.1.3 and beyond, patching is no longer required as SpringBoard natively renders third-party icons. Jailbroken applications are however stored in /Applications, instead of Apple's native third-party application folder of /var/mobile/Applications.
Customization
Themes
The SpringBoard on jailbroken devices can be customized with themes or skins. These can be applied through theming "platforms" such as WinterBoard(iOS 2 – iOS 9)[4], Anemone(iOS 7 – iOS 11)[5], the more recently SnowBoard(iOS 11 – iOS 13)[6] and iThemer (iOS 11 – iOS 12).[7] All of these theming "engines" can be installed via third-party Package Managers on Jailbroken devices such as Cydia, Sileo, Zebra, and Installer.app. Applications and user interface elements of SpringBoard can be manually themed but most users choose to use these theming platforms as they are more stable, straightforward, and offer features such as the ability to easily enable/disable themes seamlessly whenever the user chooses. Cydia can be installed via third-party jailbreaking software such as the more recent applications unc0ver (iOS 11 – iOS 13)[8] and Chimera for A12 (iOS 12, Sileo as the default package manager instead of Cydia)[9] or Chimeras predecessor Electra(iOS 11).[10]
Themes can have a variety of changes to the appearance of SpringBoard, mainly on the homescreen icon appearance. However themes also change elements of the user interface such as the dock, folder backgrounds and icons inside settings.
SpringBoard replacements
The default SpringBoard can be changed with tweaks like FrontPage.[11]
Bugs
"effective. Power" bug
A bug was discovered in May 2015 where users pasted a certain set of characters and Unicode in a set order, causing the SpringBoard to crash and relaunch, which displays a black or white screen and white or black Apple logo (depending on the user's device) that looks identical to the boot screen.[12][13] The phenomenon was later narrowed down to it only happening when the message was shown via the notification drop-down or the lock screen; it can be fixed by disabling this.[14] If the message is unread and the victim opens the iMessage app or any other app that received the message it can crash the iOS device again. Further problems can include the device resetting to its factory settings, the device no longer receiving text messages or calls and the device frequently losing Internet connection.[15]
The code was:[16]
effective. Power لُلُصّبُلُلصّبُررً ॣ ॣh ॣ ॣ 冗
The "effective." section was not required for the bug to work.[12] The bug affected iPhones, the Apple Watch and iPod Touch, Mac computers and iPads.
With the release of iOS 8.4 on 30 June 2015, the "effective. Power" bug has been fixed.
12:15 AM bug
Since the release of iOS 11, some users were complaining about random reboots on their iPhone or iPod Touch caused by the clock reaching 12:15 AM each morning. This resulted in Apple trying to fix this update in the iOS 11.2 update, but instead made it worse by adding the 12:15 PM bug, which made the iOS device reboot at 12:15 PM and AM. This bug was fixed with the re-release of the iOS 11.2 update.
CVE-2018-4124
Shortly after the release of iOS 11 a bug (CVE-2018-4124) was discovered that would cause the SpringBoard to crash and relaunch, which displays a black or white screen and white or black Apple logo (depending on the user's device) that looks identical to the boot screen.[12][13] This happens due to an issue with the CoreText component. Viewing the character on devices running iOS 11 – iOS 11.3 causes a denial of service due to memory corruption.
The character was:[17]
జ్ఞా
Apple later patched this bug with the release of iOS 11.2.6. The reason why an iPhone crashes is because the font that iPhones use do not support the character.[18]
Application loading
As of iOS 4.3.3, SpringBoard looks for applications in the /Applications and /var/mobile/Applications directories of the iPhone's filesystem to display on the home screen.
Use in macOS
Mac OS X Lion included a new feature called 'Launchpad". This feature was based on the SpringBoard feature in iOS software. It included the same features (like folders) but was not made as the home screen, more an extension on the dock (like Dashboard).
Before the Developer Preview of Mac OS X Lion, SpringBoard was renamed Launchpad. Even though the name displayed in the dock remains the same, the images used to make up Launchpad are still named "SpringBoard" (or "sb"), and can be found in /System/Library/CoreServices/Dock.app/Contents/Resources.
References
- Apple – iPod touch features Archived August 23, 2009, at the Wayback Machine
- "Welcome to iPhone OS3.0". iPhone Life. Summer 2009.
- Matthias Böhmer, Antonio Krüger. A Study on Icon Arrangement by Smartphone Users. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '13). ACM, New York, NY, USA, 2137–2146.
- "WinterBoard · Cydia". cydia.saurik.com. Retrieved March 4, 2019.
- Anemone, a revolutionary theming engine for iOS 7 to iOS 10! Theme more than just images!: AnemoneTeam/Anemone, AnemoneTeam, March 1, 2019, retrieved March 4, 2019
- "How to set up and use SnowBoard (Anemone alternative)". Yalu Jailbreak. October 5, 2018. Retrieved March 4, 2019.
- "DOD Graphics (@DODGraphics) | Twitter". twitter.com. Retrieved June 4, 2019.
- Pwn20wnd (March 4, 2019), GitHub - pwn20wndstuff/Undecimus: unc0ver jailbreak for iOS 11.0: 12.1.2., retrieved March 4, 2019
- "Chimera". chimera.sh. Retrieved June 4, 2019.
- "Electra". coolstar.org. Retrieved March 4, 2019.
- "FrontPage API". junesiphone.com. Retrieved June 4, 2019.
- "Bug in iOS Unicode handling crashes iPhones with a simple text". Apple Insider. May 26, 2015. Retrieved May 29, 2015.
- "Corrupt iCloud Data Causes iOS SpringBoard Home Screen Crash (with Fix!)". The Mac Observer. June 18, 2015. Retrieved June 18, 2015.
- Griffin, Andrew (May 28, 2015). "iPhone 'effective power' text: how to be safe from iOS bug that lets people crash your phone". Independent.co.uk. Retrieved May 29, 2015.
- Clover, Juli (May 26, 2015). "New iOS Bug Crashing iPhones Simply by Receiving a Text Message". MacRumors. Retrieved May 29, 2015.
- Chowdhry, Amit (May 29, 2015). "Apple Acknowledges Disastrous iPhone Messages Bug, Suggests This Temporary Fix". Forbes. Retrieved June 2, 2015.
- "NVD – CVE-2018-4124". nvd.nist.gov. Retrieved March 4, 2019.
- "About the security content of iOS 11.2.6". Apple Support. Retrieved March 4, 2019.