Android der Dinge
Bootscreen nach Mass
Sie dürfen im Bundle durch das Mit-Ausliefern einer Datei namens bootanimation.zip eine Animation festlegen, die im Rahmen der Initialisierung des Betriebssystems angezeigt wird: insbesondere im Bereich der hochpreisigen Messtechnik ist es wünschenswert, die Nutzung von Android so gut wie möglich zu verschweigen.
Für erste Gehversuche wollen wir uns eine der unter https://forum.xda-developers.com/android/themes/bootanimations-50-flashable-t3059659 zum Download bereitstehenden Beispielanimationen von fremden Autoren ansehen – wer Disintegrating Hexagon extrahiert und das Resultat durch den Tree-Befehl jagt, sieht das in der Bild 13 gezeigte Resultat. Wichtig ist, dass die in den einzelnen Ordnern liegenden .png-Dateien stets durchnummeriert sein müssen, da sie der Bootloader sonst nicht findet.
desc.txt – der Name darf auf keinen Fall mit einem grossen D geschrieben werden – ist hierbei eine Textdatei, die die Anzeige der in den verschiedenen Ordnern liegenden .png-Dateien steuert. Im Fall des Beispielfiles sieht die Struktur folgendermassen aus:
720 1280 30
p 0 0 DisintegratingHexagon
Die erste Zeile des Files legt die Breite, die Höhe und die Anzahl der Frames pro Sekunde fest: unsere Animation ist für ein Telefon mit einer Auflösung von 1280x720 vorgesehen, und wird mit 60 Frames pro Sekunde abgespielt.
Die darunter folgenden Zeilen beschreiben die Stufen der Animation, und sind nach folgendem Schema aufgebaut:
TYPE COUNT PAUSE PATH [#RGBHEX CLOCK]
Type ist entweder p oder c: ein c-Teil wird vom Betriebssystem auf jeden Fall abgespielt, während der P-Teil vom erfolgreich durchgelaufenen Systemstart unterbrochen werden darf. Count bestimmt, wie oft die Animation abzuspielen ist – wer hier 0 übergibt, erzeugt eine Endlosschleife, die nur vom erfolgreichen Bootprozess unterbrochen wird. Mit Pause bestimmen Sie die in Frames gehaltene Wartezeit nach dem erfolgreichen Abspielen der Sequenz, während Path den – case sensitive gehaltenen – Namen des Unterordners enthält, in dem die jeweiligen Sequenzdateien warten.
Die beiden optionalen Attribute erlauben das Festlegen einer Hintergrundfarbe und eines Platzes zum Einblenden einer Uhrzeit – eine vollständige Dokumentation findet sich unter https://android.googlesource.com/platform/frameworks/base/+/master/cmds/bootanimation/FORMAT.md. Zu guter Letzt dürfen wir in jedem Verzeichnis eine Datei namens audio.wav ablegen, die im Rahmen des Abarbeitens der jeweiligen Sequenz aus den Lautsprechern des Geräts erklingt.