SkankPhone

SkankPhone
[edit | edit source]SkankPhone est une composante des utilitaires de débogage internes d'Apple, servant d'alternative à SpringBoard, l'interface principale d'iPhone OS. Contrairement à l'approche classique de SpringBoard qui sépare les fonctions d'iPhone OS (telles que Téléphone, Safari, Messages, etc.) en applications autonomes, SkankPhone regroupe plusieurs fonctionnalités dans une seule application. Cette application intègre un téléphone, un navigateur web, un lecteur de musique et un éditeur de SMS. En appuyant sur le bouton Home, une barre d'outils apparaît avec cinq raccourcis vers différentes sections de SkankPhone : Téléphone, Web, SMS, Musique et Configuration. Dans la version prototype du firmware Alpine 1A420, SkankPhone incluait également un écran dédié à l'opérateur.
SkankPhone était une partie notable des firmwares dits "Non-UI" (sans interface utilisateur standard) des versions 1.0 à 5.1 d'iPhone OS. Sa dernière apparition connue remonte aux prototypes exécutant la version 5.1. À partir de la version 6.0, SkankPhone a été retiré pour des raisons non précisées.
Variations entre versions
[edit | edit source]Les différentes versions de SkankPhone présentent des différences mineures. Certaines versions incluent un bouton "Quitter" dans le coin inférieur droit, tandis que d'autres affichent un bouton "À propos de l'appareil" à cet endroit. Fait intéressant, les versions plus récentes de SkankPhone comportent un bouton "Plus d'autres" ("More Other"), bien qu'aucun bouton "Autre" ne soit présent dans l'interface.
Compatibilité avec SpringBoard
[edit | edit source]SkankPhone peut coexister avec SpringBoard. Lorsqu'il est placé dans le dossier /Applications/SkankPhone.app, il apparaît dans l'interface de SpringBoard et peut être lancé (sur les firmwares 1.x). Lors du lancement, SkankPhone termine le processus de SpringBoard, empêchant ce dernier de redémarrer.
Origines probables
[edit | edit source]SkankPhone semble être basé sur le "système" d'Acorn OS P2, en raison des similitudes dans leur interface utilisateur.
Aspects techniques
[edit | edit source]SkankPhone ne dépend pas de SpringBoard et peut fonctionner avec ou sans celui-ci. Contrairement aux applications UIKit classiques, SkankPhone n'est pas lié à UIKit et utilise son propre framework personnalisé, appelé SkankKit, qui agit comme un remplacement simplifié de UIKit. Ce framework est inclus dans le bundle de l'application SkankPhone. L'application est lancée par un démon, et au cours de ce processus, SkankPhone désactive le démon de SpringBoard, ce qui entraîne l'arrêt de SpringBoard sans possibilité de redémarrage automatique.
Structure des fichiers de l'application
[edit | edit source]La structure des fichiers de SkankPhone est la suivante :
- _CodeSignature
- _internal_Default.png
- _internal_icon.png
- _internal_SkankPhone.png
- CodeResources
- com.apple.SkankPhone.plist
- config.plist
- Info.plist
- PkgInfo
- SkankPhone
Cette structure reflète une organisation typique des applications iOS, avec des fichiers de configuration, des ressources et le binaire principal de l'application.
Conclusion
[edit | edit source]SkankPhone représente une approche unique dans l'histoire du développement d'iPhone OS, en regroupant plusieurs fonctionnalités dans une seule application pour les besoins de débogage interne d'Apple. Bien qu'il ne soit plus utilisé dans les versions modernes d'iOS, il reste un élément intéressant pour comprendre l'évolution des interfaces et des outils de développement chez Apple.