Quantcast
Jump to content

webOS Open Source Edition For Developers


Recommended Posts

On March 19th, LG introduced 

link hidden, please login to view
 with the intention of opening up webOS again to the world of development to move beyond TVs. This is the second time an open-source version of webOS has been released, the first coming under the failed tenure of HP back in 2011. 

LG Chief Technology Officer Dr. I.P. Park. “webOS has come a long way since then and is now a mature and stable platform ready to move beyond TVs.”

webOS Open Source Edition Architecture

The following figure shows the overall architecture of webOS Open Source Edition (OSE). webOS OSE consist of a set of layers: Core Applications, Application Framework, Managers & Services, Base Components, and BSP/Kernel.

webOS Open Source Edition Architecture

Core Applications

  • webOS OSE has Core applications as the top layer and this layer includes System UI and System app.
  • System UI includes apps that are related to the basic user interface, such as Home Launcher and Notification. These apps are usually implemented using QML.
  • System app includes Settings app and web browser. Settings app is used to control the system properties and implemented using Enact. As a web browser, the Chromium browser is used.

Application Framework

  • To help developers creating better apps and services, webOS OSE provides enhanced options and environments compared to developing solely with HTML5, JavaScript, or CSS. The web app framework Enact, which is equivalent to jQuery, and Software Development Kit (SDK) are provided.
  • Enact
  • Enact is a web app framework optimized for developing web apps for webOS OSE. For more information and structure of Enact, refer to Enact developer site.
  • Enact is also an open source project and is provided separately from webOS OSE.

SDK

The SDK provides a development environment for web apps and services. In this release of webOS OSE, we provide a CLI-based SDK for developing and installing web apps and services. Web apps can be packaged with services that are developed using Node.js. For more details on development/packaging of web apps and services, see Command Line Interface.

Managers & Services

  • Managers & Services layer includes the following components.
  • System and Application Manager
  • System and Application Manager (SAM) oversees the behavior of apps. SAM manages each app throughout its lifecycle, including the installation, launch, termination, and removal of the app.

There are two types of apps in webOS Open Source Edition: native app and web app. In case of a web app, actual launching and management are performed by Web Application Manager as described below.

Web Application Manager

Web Application Manager (WAM) is responsible for launching and managing web apps. In addition, WAM performs CPU usage optimization, status monitoring and recovery processing, and access privileges management, all based on the running status of web apps.

Luna Surface Manager

Luna Surface Manager (LSM) is a component that works as a graphics manager. LSM displays graphical elements on the screen, manages the composition of these elements, and performs the event handling for input devices such as keyboard and pointer. LSM is also responsible for the execution and management of System UI, such as Home Launcher and Notification. LSM is implemented using Qt, and System UI is implemented using QML.

Activity Manager

Activity Manager is responsible for managing and executing activities requested from services. An activity is requested along with a specific condition, and it is triggered when the condition is met. You can configure the activity to perform tasks such as automatic execution of specific services, callback requests, and so on.

uMediaServer

uMediaServer (uMS) is a module that works as a server for the webOS media framework. uMS provides interfaces for media playback, manages resources, pipelines, and their policies, and manages the lifecycle of the media player.

Base Components

Base Components layer includes the following components.

  • LS2
  • LS2, also called Luna Bus, is a system bus used by webOS OSE. LS2 manages the interface registration and invocation required for the interconnection among apps and services. Originally based on D-bus, LS2 has been enhanced to optimize the performance for embedded device environment.

Web Engine

webOS OSE uses Chromium as the web engine. A web engine is the module that loads and parses a web app (or web page) consisting of HTML, CSS, and JavaScript, and performs all tasks required to represent the web app on the screen, such as layering and rendering. Currently the web runtime environment of webOS OSE is implemented according to the multi-process model of Chromium. Therefore, each web app is run as a separate independent process.

Chromium also includes browser logics a.k.a. Chromium browser which webOS OSE provides as the default browser app.

DB8

DB8 is an embedded JSON database that supports data storing and retrieving in the structure of key-value store. webOS OSE uses LevelDB as the back-end database. The default service associated with DB8 is the com.webos.db. The com.webos.tempdb, which allows you to configure temporary storage in memory, is also provided.

Node.js

The service framework based on Node.js is provided so that you can implement services with JavaScript language. Node.js is a JavaScript framework that is typically run on a server. In webOS OSE, Node.js has been built in to facilitate service development. For more information on developing services based on Node.js, see JS Services.

BSP/Kernel

BSP/Kernel layer consists of several components to support Raspberry Pi 3. Typically, it provides evdev for event processing, Mesa for graphics support, and Wi-Fi and wired LAN for connectivity.

Except as noted, this content is licensed under Creative Commons Attribution 4.0 and sample code is licensed under Apache License 2.0.

Visit: 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Topics

    • By AnitaR
      ITVX won’t open up from home page on OLED65C34LA 
    • By News Reporter
      Selected Finalists to Receive Funding to Develop and Launch
      Their Gaming or Lifestyle App on LG Smart TVs

      SEOUL, July 9, 2024 — LG Electronics (LG) announced a call for participants for its annual global webOS hackathon, with a focus this year on AI-based solutions and gaming services. Developers worldwide are invited to apply and submit their apps for a chance to win a significant monetary prize along with the opportunity to present onstage to LG executives in Seoul, South Korea, this September.
      As a web-centric platform with an easy-to-use Smart TV software development kit, webOS enables developers to create third-party services and apps for millions of homes worldwide. The platform offers developers the tools to create apps and services that engage media, devices, security, networking, Smart TV functionalities and more. Through this hackathon, developers will have the opportunity to build and launch their app on LG Smart TVs, directly reaching consumers with their business.
      Powering LG Smart TVs, including the award-winning LG OLED TV, for over a decade, webOS platform has been acclaimed as a friendly user interface, with easy navigation and customization to provide users with the premium entertainment experience expected from LG products. Now, with an always-growing ecosystem of global partners, the webOS platform is set to drive the next generation of service innovation.
      In addition, LG is committed to expanding the webOS ecosystem by partnering with leaders in the gaming industry. This collaboration aims to offer customers a wide range of gaming services tailored to diverse preferences and interests, while enhancing the gaming capabilities of its exceptional OLED TVs. LG Smart TVs in global markets now feature an increasing array of cloud gaming services and family-friendly games.
      To participate in the hackathon, applicants will need to submit their applications
      link hidden, please login to view. Applications for the hackathon are now open and will close on July 26. Following the application process, participants will be invited to a webinar to learn more about the API and hackathon details. Finalists will be notified by mid-September. For more information about the hackathon, including detailed event schedules with terms and conditions, visit .
      The hackathon will begin with a virtual webinar in early July. Participants will choose to create a game or lifestyle service app using either the Web or Flutter framework, with the opportunity to earn additional merit points for utilizing AI. The app, scenario and demo video must be submitted by August 26. Selected winning developers will then be invited to Seoul to present their ideas in front of top LG executives on September 27.
      Cash prizes will be awarded to the top three winners of the hackathon, with a USD 100,000 Grand Prize for first place, USD 80,000 for second place and USD 50,000 for third place. The winners will also receive technical support leading up to the rollout of their app as well as on-device promotional opportunities after the launch. Winning apps must be ready for release on the LG Content Store by the end of June 2025.
      “LG webOS Hackathon 2024 aims to attract creators worldwide who are building lifestyle solutions,” said Chris Jo, senior vice president of platform business at LG Home Entertainment Company. “LG is committed to engaging with the gaming community on a global scale, partnering with developers to nurture the next generation of talent using LG’s developer platform.”
      # # #

    • By Schleimie
      Hey, 
      My question is, can I install webos4.0 or higher on my lg 49uj701v, for example via a USB stick with an .apk ? I would like to download Paramount+.
      Thanks a lot
    • By Flavio_S
      On LG OLEDs. You go on and disable SIMPLINK. Fine. But everytime you turn on your HDMI device it enables itself back again. This happens because they have disables two key features that were present in previous OSs, as you can see clearly here
      link hidden, please login to view (they even put screencaps of the menus where you see the missing options in the 23) These functions are Auto Power Sync and Auto Device Detection.
      Man updates are supposed to add functionalities not the other way around. It's very annoying to turn on your TV and have your AVR turn on without you wanting to.

      Anyone found a solution for this problem?
    • Weebly - Websites, eCommerce & Marketing in one place.
    • By denisuu
      Hi all,
      I'm wondering how you can get into the service menu (In Start) on an old LG Smart TV (42LB630V) running WebOS 1.4.  I have a Samsung Galaxy S6 (SM-G920F) with a IR blaster, I have tried sending '0x04FB 0xFB04' to I which should be IR code to enter the menu, but that doesn't work.
      I have also tried entering it with the SSAP-Web, but I get:
      error: 500 Application error {"errorCode":-101,"returnValue":false,"errorText":"\"com.webos.app.factorywin\" was not found OR Unsupported Application Type" The SAPP-Web app does works though, because the TV does respond to Get info
      { "returnValue": true, "product_name": "webOS", "model_name": "HE_DTV_WT1M_AFAAABAA", "sw_type": "FIRMWARE", "major_ver": "05", "minor_ver": "05.90", "country": "omitted", "device_id": "omitted", "auth_flag": "N", "ignore_disable": "N", "eco_info": "01", "config_key": "00", "language_code": "en-GB" } The reason I want to access the menu is because I've enabled DEBUG mode on my TV through the NVM method and I want to enter a root shell trough UART to enable SSH and root access.
      Gaining root access through NVM: 
      link hidden, please login to view
  • Similar Tagged Content

×
×
  • Create New...