Contributions to this page are welcome!
DevTools
Web applications on webOS can be inspected using Chromium DevTools, equivalent to the functionality present in modern browsers.
This can be accessed using various methods:
- Running
ares-inspect APPIDwith SDK set up - Directly accessing
http://TV_IP:9998from a browser (equivalent to method 1, but does not require SDK) - Adding
TV_IP:9998as a "Remote Target" inchrome://inspectin Chromium-based browsers.
All these methods have some limitations on older webOS versions. For example, using methods 1 and 2 on webOS 3.8:
- DevTools fails completely when opened in Chromium 96 (only top tab bar is rendered)
- "Console" is not scrollable and code cannot be injected when running in Firefox 94
- Works mostly fine in Midori 9.0 (WebKitGTK-based browser on Linux)
Option 3 works fine, but code execution in the "Console" tab does not work and the preview window seems corrupted. This also may sometimes trigger a WAM crash for unknown reasons.
Chromium versions
Some of the issues encountered using DevTools on older webOS versions may be resolved by using an older release of Chromium. Specifically, according to LG's App Debugging documentation, the supported versions are:
- webOS 1–3: Chrome 38
- webOS 4–5: Chrome 68
- webOS 6+: latest version
The LG documentation links to these Chrome builds:
Apps You Did Not Build
Inspecting non-developer apps
Apps installed from the Content Store (generally found under /media/cryptofs)
are not inspectable by default. You can make an app inspectable by adding
"inspectable":true to its appinfo.json.
Inspecting system apps
It is possible to inspect system apps (i.e., those found in
/usr/palm/applications) on port 9999. However, this is not enabled by
default. While creating the file /var/luna/preferences/debug_system_apps
should enable it, our current method of maintaining root access creates issues
that require additional workarounds.