Die Veröffentlichung der Open-Source-Plattform webOS Open Source Edition 2.27 wurde vorgestellt, die auf verschiedenen tragbaren GerĂ€ten, Platinen und Informations- und Unterhaltungssystemen im Auto eingesetzt werden kann. Als Referenzhardware-Plattform dienen Raspberry Pi 4-Boards. Die Plattform wird in einem öffentlichen Repository unter der Apache 2.0-Lizenz weiterentwickelt, und die Entwicklung wird von der Community unter BerĂŒcksichtigung eines gemeinsamen Entwicklungsmodells geleitet.
Die wesentlichen Ănderungen in der neuen Version:
- Die Browser-Engine wurde auf Chromium 120 aktualisiert (zuvor wurde Version 108 verwendet). Die Anwendung mit der Implementierung des Enact-Browsers wurde auf das Konzept des Browser Shell anstelle des App Shell umgestellt, was die FunktionalitĂ€t und FlexibilitĂ€t der Inhaltsverarbeitung erweitern konnte. Die Architektur des App Shell sieht die Verwendung einer eigenen Implementierung der BenutzeroberflĂ€che vor, in der gerenderter Webinhalt angezeigt wird, wĂ€hrend die Architektur des Browser Shell darauf abzielt, standardmĂ€Ăige BenutzeroberflĂ€chenelemente des Basisbrowsers zu nutzen.
- ZusĂ€tzliche Möglichkeiten fĂŒr autarke Webanwendungen (PWA, Progressive Web Application) wurden hinzugefĂŒgt, wie die UnterstĂŒtzung der Navigation mit den SchaltflĂ€chen âVorwĂ€rtsâ und âRĂŒckwĂ€rtsâ, eine benutzerfreundlichere Scrollfunktion und die Möglichkeit der Ausgabe von Push-Benachrichtigungen.
- Die Effizienz des Build-Prozesses wurde verbessert. Die Image-Dateierweiterungen fĂŒr den Start im Emulator wurden von â.wic.vmdkâ auf âwic.vmdk.gzâ geĂ€ndert.
- Im API com.webos.service.mediacontroller, das die Schnittstelle zur Steuerung der Wiedergabe bildet, wurde die Methode setSupportedActions hinzugefĂŒgt, um eine Liste unterstĂŒtzter Aktionen (play, pause, next, previous, mute, unmute) festzulegen.
- Der Systemdienst luna-sysservice wurde von der Bindung an Qt befreit.
- Das Framework Qt wurde auf Version 6.7.2 aktualisiert.
- Die Möglichkeit zur Ănderung der Farben, die im Design des Configurators (Einstellungen-App) verwendet werden, wurde hinzugefĂŒgt.

Die webOS-Plattform wurde ursprĂŒnglich 2008 von Palm entwickelt und auf den Smartphones Palm Pre und Pixie verwendet. Nach der Ăbernahme von Palm im Jahr 2010 ging die Plattform in den Besitz von Hewlett-Packard ĂŒber, die versuchte, diese Plattform in ihren Druckern, Tablets, Laptops und PCs zu verwenden. 2012 kĂŒndigte HP an, webOS in ein unabhĂ€ngiges Open-Source-Projekt zu ĂŒberfĂŒhren, und begann 2013 mit der Veröffentlichung des Quellcodes seiner Komponenten. Im Jahr 2013 wurde die Plattform von LG von Hewlett-Packard ĂŒbernommen und wird nun in ĂŒber 70 Millionen LG-Fernsehern und Verbraucherelektronik eingesetzt. 2018 wurde das Projekt webOS Open Source Edition gegrĂŒndet, ĂŒber das LG versuchte, zu einem offenen Entwicklungsmodell zurĂŒckzukehren, andere Teilnehmer zu gewinnen und die unterstĂŒtzten GerĂ€te in webOS zu erweitern.
Die Systemumgebung von webOS wird unter Verwendung von Werkzeugen und Basis-Paketen aus OpenEmbedded sowie einem Build-System und einem Satz von Metadaten des Yocto-Projekts gebildet. Zu den SchlĂŒsselkomponenten von webOS gehören der System- und Anwendungsmanager (SAM, System and Application Manager), der fĂŒr die AusfĂŒhrung von Anwendungen und Diensten verantwortlich ist, und der Luna Surface Manager (LSM), der die BenutzeroberflĂ€che gestaltet. Die Komponenten sind mit dem Qt-Framework und der Chromium-Browsing-Engine geschrieben.
Die Darstellung erfolgt ĂŒber einen Compositing-Manager, der das Wayland-Protokoll verwendet. FĂŒr die Entwicklung von Benutzeranwendungen wird empfohlen, Webtechnologien (CSS, HTML5 und JavaScript) sowie das auf React basierende Enact-Framework zu verwenden, jedoch ist auch die Erstellung von Programmen in C und C++ mit einer Qt-basierten BenutzeroberflĂ€che möglich. Die BenutzeroberflĂ€che und die integrierten grafischen Anwendungen sind hauptsĂ€chlich als native Programme implementiert, die mit QML-Technologie erstellt wurden. StandardmĂ€Ăig wird die Home Launcher-OberflĂ€che angeboten, die fĂŒr die Steuerung ĂŒber Touchscreens optimiert ist und das Konzept wechselnder Karten (anstatt Fenstern) bietet.
Zur Speicherung von Daten in strukturierter Form im JSON-Format wird das DB8-Speichersystem eingesetzt, das LevelDB als Backend verwendet. Bootd auf Basis von systemd wird zur Initialisierung verwendet. FĂŒr die Verarbeitung von Multimedia-Inhalten stehen die Teilsysteme uMediaServer und Media Display Controller (MDC) zur VerfĂŒgung, wobei als Soundlösung Server PulseAudio verwendet wird. FĂŒr die automatische Aktualisierung der Firmware kommen OSTree und atomare Partitionsersetzungen zum Einsatz (es werden zwei Systempartitionen erstellt, von denen eine aktiv ist und die andere fĂŒr das Kopieren des Updates verwendet wird).
Quelle: opennet.ru
