Changelogs Core Apps Android On this page
Latest Beta Version
Removed
Devices running Android 4.4 are no longer supported (e.g. BenQ SL, Philips 10BDL3051, Philips BDL4050, Sharp PN-B)
Data migration from pre-CAv4 is no longer possible (update to CAv4+ before updating to CAv5+)
Crosswalk implementation of WebView is no longer available
Core App is no longer signed by OEMs and can no longer leverage platform permissions directly
Added
[4.10.8] - 2025-02-28
Fixed
Fix race condition in video player resulting in video getting stuck (since 4.10.6)
Remove some false positive error logs during app startup
[4.10.7] - 2025-02-26
Fixed
Improve cancellation handling of internal processes
J2JS: Get screen orientation API now works as expected (since 4.10.0)
[4.10.6] - 2025-02-20
Fixed
Limited support for MediaMood Harmony A1 and MVP195
Skip firmware update device compatibility check if we're lacking privileges
Pre-confirm EULA based on external storage metadata (limited support)
Fail fast if there's not enough space to download a firmware update
Don't reconnect service socket immediately after provisioning
Don't start main activity twice after a reboot when content runs in a separate process
Kill separate content process during deprovisioning
Content correctly loads after app restart (since 4.10.0)
[4.10.5] - 2025-02-14
Fixed
Critical: App no longer crashes on non-Philips devices (since 2.10.4)
Philips, BenQ SL: Backlight no longer remains off after a system-triggered hard reboot following a display power command or timer event (since 4.5.0)
[4.10.4] - 2025-02-12
Fixed
Improve Philips SICP reliability further (since 4.1.0)
[4.10.3] - 2025-02-11
Fixed
Philips: Improve SICP reliability resulting in better reporting capabilities
[4.10.2] - 2025-02-07
Fixed
Improve lock task mode handing on Android 10 and newer
Improve persisting display power state before a system-triggered hard reboot
Philips 24BDL4151T: ADB/TCP toggle now works as expected
TPV: Improve scalar service connection reliability
[4.10.1] - 2025-01-31
Fixed
App no longer restarts early in app's lifecycle after a reboot
Gracefully handle IPC dying during app restart
Improve MAC address reporting on some devices
[4.10.0] - 2025-01-21
Added
Support Videri Spark
Support File System Wipeout power action
Fixed
Powered by library 14.10.0
Correctly handle cancellation during an ADB-to-self connection attempt
Content should no longer get stuck disabled after setup wizard in some cases
Unsupported devices no longer spam configuration endpoint before enabling Demo Mode
JS API: Correctly support FrontCapability.FILE_SYSTEM_ARCHIVE_EXTRACT_INFO
JS API: Correctly pass headers to File Upload API
[4.9.0] - 2025-01-14
Added
Support Philips 10BDL5051T
Report supported device feature flags
Report bundled applet to Box
Fixed
Powered by library 14.9.1
Display service socket status and verification code in debug UI
Read serial number on unsupported Philips tablets
[4.8.17] - 2025-01-14
Fixed
Philips BDL4050D: Remote Desktop
[4.8.16] - 2025-01-13
Fixed
Declare unsupported LED on Philips 10BDL3351T
Support devices where display from an activity context doesn't match the default display in terms of declared dimensions (observed on Redmi 12 running Android 15)
[4.8.15] - 2025-01-11
Fixed
Philips 10BDL3051T: Remote Desktop
[4.8.14] - 2025-01-08
Fixed
Critical: Correctly start applet after boot, when running in a separate process, which has been the default since 4.8.0 (since 4.6.0)
[4.8.13] - 2025-01-07
Fixed
Gracefully handle IPC dying during app restart
(internal) BenQ SL2K: Factory reset API now works as expected
[4.8.12] - 2025-01-06
Fixed
App no longer restarts when checking foreground status on some devices
[4.8.11] - 2025-01-02
Fixed
Gracefully handle IPC dying during app restart
Correctly parse running system task info using root
More reliable access checks for system cache partition
[4.8.10] - 2025-01-02
Fixed
App no longer restarts when switching input source on Hisense BM66AE (since 4.7.0)
Gracefully handle potential issues during Wi-Fi API calls
[4.8.9] - 2025-01-02
Fixed
Set time using root
Report network interfaces with IPv6 link and prefix length greater than 32
BenQ SL: Display power telemetry is reported correctly after a boot
[4.8.8] - 2024-12-16
Fixed
[4.8.7] - 2024-12-12
Fixed
Don't install Google WebView 85 if Android WebView 85 or newer is already installed
Prevent app restart when main activity recreates in some cases
App should no longer get stuck on Starting... after boot on some devices
[4.8.6] - 2024-12-05
Fixed
Home app should now resolve to signageOS instead of fallback launcher on Android 4.4 (since 4.8.5)
[4.8.5] - 2024-11-21
Fixed
Home app should now resolve to signageOS instead of fallback launcher (since 4.8.0)
[4.8.4] - 2024-11-07
Fixed
Philips, BenQ SL: Correctly persist display power state before a system-triggered hard reboot following a display power command or timer event (since 2.7.0)
[4.7.9] - 2024-11-07
Fixed
Philips, BenQ SL: Correctly persist display power state before a system-triggered hard reboot following a display power command or timer event (since 2.7.0)
[4.8.3] - 2024-10-31
Fixed
Novastar: Persist Wi-Fi AP/STA mode set on device (outside of ViPlex)
[4.8.2] - 2024-10-30
Fixed
Screen capture using MediaProjection now works on Android 10 and newer
Report package install results (since 2.7.0)
Gracefully handle too big telemetry intervals provided by configuration endpoint
[4.7.8] - 2024-10-30
Fixed
Screen capture using MediaProjection now works on Android 10 and newer
Report package install results (since 2.7.0)
Prevent crash when using Preferred Network Manager on unsupported devices
Sleep and wake up using wake locks should work as expected (since 2.7.3)
Gracefully handle too big telemetry intervals provided by configuration endpoint
[4.8.1] - 2024-10-29
Fixed
Prevent crash when using Preferred Network Manager on unsupported devices
Sleep and wake up using wake locks should work as expected (since 2.7.3)
[4.8.0] - 2024-10-25
Added
Developer Option: Applet lifecycle may continue to run while the screen is turned off
Support NovaStar TB50
Screenshot telemetry and API can be disabled by a remote-controlled feature flag
Report app modules
Fixed
Stream JS API: Detect undeclared closed captions in TS data stream
Stream JS API: Add trackSelection.selectUndeterminedTextLanguage option
Powered by library 14.6.0
Updated to Front-OSD 0.13.0
Gracefully handle low-level file system API failures to close files downloaded to flash drives
Home app should now resolve to signageOS instead of Home app picker
Gracefully handle invalid telemetry intervals provided by configuration endpoint
[4.7.7] - 2024-10-11
Fixed
Critical: Correctly provision Hisense DM66D and WF25E (since 4.7.0)
[4.7.5] - 2024-10-11
Fixed
Critical: Correctly provision Hisense BM66AE (since 4.5.0)
Ethernet toggle persists state correctly on Philips 24BDL4151T (since 4.6.1)
[4.6.5] - 2024-10-11
Fixed
Critical: Correctly provision Hisense BM66AE (since 4.5.0)
Ethernet toggle persists state correctly on Philips 24BDL4151T (since 4.6.1)
[4.5.5] - 2024-10-11
Fixed
Critical: Correctly provision Hisense BM66AE (since 4.5.0)
[4.7.4] - 2024-09-09
Fixed
App no longer crashes when loading bundled applet from invalid URL
App no longer crashes when checking denied permissions on Android 12 (since 2.0.0)
App no longer crashes when managing screenshot requests (since 2.7.0)
Improve binding app process lifecycles together
[4.7.3] - 2024-09-04
Fixed
Display ON now reliably works on Android 11 for TV and newer
[4.7.2] - 2024-09-04
Fixed
Critical: Fix alarm-related crash on Android 13 and newer (since 2.7.0)
[4.7.1] - 2024-09-04
Fixed
Critical: Correctly bind app process lifecycles together (since 4.5.0)
[4.6.4] - 2024-09-04
Fixed
Critical: Correctly bind app process lifecycles together (since 4.5.0)
[4.5.4] - 2024-09-04
Fixed
Critical: Correctly bind app process lifecycles together (since 4.5.0)
[4.7.0] - 2024-09-03
Added
Support Philips 10BDL3351T
Install APKs from arbitrary URLs
New deployments default to appassets.android.signageos.io origin instead of an opaque origin. Use JS API v6.5.7 or newer for best results.
Target Android 12L
Fixed
Telemetry: Report Device Owner and Accessibility Service status, which can be used to remotely gauge device management capabilities.
Telemetry: Report process metadata, which can be used to remotely gauge device management capabilities.
Optimize screenshot delivery for remote desktop
Set auto/time/zone using Philips API, alternatively
Validate time zone instead of defaulting to GMT
[4.6.3] - 2024-08-02
Fixed
Fix in-app inter-process permission checks affecting the browser process (since 4.4.0)
Setup should no longer get stuck on Installing Device Management... on supported devices
JS API: Browser domain ACL now applies to clicked links on Android 5+
[4.6.2] - 2024-07-12
Fixed
Sharp: Reject placeholder serial number 8A012345K
[4.6.1] - 2024-07-12
Fixed
Apps obtained from https://a.signageos.io/sharp before and including v4.1.1 will be able to update to v4.7.0 or newer.
Apps obtained from https://a.signageos.io/sharp after and including v4.1.2 must update to v4.6.x before updating to v4.7.0 or or newer.
JS API: Browser timeout is now reset with each user interaction (since 3.12.0)
JS API: Browser domain ACL now correctly matches domains (since 3.2.0)
JS API: Screenshot upload API returns correct URL (since 4.3.3)
Telemetry: Report actual display power (since 4.6.0)
Telemetry: Allow reporting multiple connected network interfaces
Developer Option: Disable Ethernet restart on connection error
Ethernet restart should no longer cause permanent network loss
Don't allow Ethernet restart optimistically on untested devices
Auto-verification: Wait for user setup complete before enforcing policies
Revert "New deployments default to appassets.android.signageos.io origin instead of an opaque origin" until we address CORS issues. First-time deployments of v4.6.0 will need to switch the developer option manually.
Philips 24BDL4151T: Fix "Application Not Responding"
Philips 24BDL4151T: Fix disabled content due to stuck SELinux checks
[4.6.0] - 2024-06-19
Added
Support Auto-verification from Android Provisioning
Telemetry: Report actual display power
Updated to Front-OSD 0.12.0
Developer Options: Run applet in a separate process
Allow custom WebView build on Kitkat
New deployments default to appassets.android.signageos.io origin instead of an opaque origin
[4.5.3] - 2024-06-19
Fixed
Report battery status when device isn't plugged in (since 4.3.3)
[4.5.2] - 2024-06-19
Fixed
Fix Wi-Fi MAC address reporting in some cases (since 4.3.0)
Only deprovision verified devices; don't interfere with setup
[4.5.1] - 2024-06-19
Fixed
Critical: Applets now correctly switch on Android 4.4 with WebView M30
[4.5.0] - 2024-05-14
Added
Developer options: Applets can use appassets.android.signageos.io origin instead of an opaque origin
Troubleshooting: Toggle high-priority privileged launcher, e.g. on Android TV, for non-CMS applications
Support Philips BDL3650Q
Support hisense DM66D
Support hisense WF25E
Fixed
Improve high-priority privileged launcher recognition (since 4.3.5)
Unify immersive mode behavior across platform versions
P2P synchronizer now works on Android 4.4
Powered by library 13.8.0
Target Android 11
Setup wizard: Run in lock task mode on Android 9+ to avoid interrupting automated flows
Improve Ethernet adapter MAC address extraction
hisense BM66AE: Use native portrait mode
hisense BM66AE: Default to TextureView for video in portrait mode
ExoPlayer: TS exposes fallback CEA-608 closed captions if undeclared in PMT
ExoPlayer: Pass DRM configuration and track selection options when sos.video.prepare API isn't fully supported
Correctly report Wi-Fi on most devices (since 4.3.0)
JS API: P2P video synchronization now works on Android 4.4
Philips, BenQ SL: Backlight no longer remains off after a system-triggered hard reboot following a display power command or timer event
Fix backported shell commands on Kitkat (since 4.4.0-rc.3)
Remotely installed packages are started automatically, once again (since 4.5.0-alpha.1)
Additionally load developer options from all files matching sos.dev. + .jar file name on a flash drive
[4.4.4] - 2024-04-03
Fixed
Improve a11y service compatibility with Android 7+ devices
Setup wizard: Ask for a11y service permission on Android 4.4–6 devices (since 4.0.0)
Avoid potential crash on null response message using WebView older than M73 (https://issues.chromium.org/issues/41437689 )
Powered by library 13.6.4
[4.4.3] - 2024-03-21
Fixed
Critical: Correctly report app upgrade (since 4.4.0)
[4.4.2] - 2024-03-20 [YANKED]
Fixed
JS API: Correctly report Serial API support (sos.display.supports("SERIAL"))
JS API: Serial API now works on Android 10 or newer (since 4.4.0)
Elo Backpack 4: Set as default home
[4.4.1] - 2024-03-14 [YANKED]
Fixed
BenQ SL: Match emulated Lock Task Mode behavior with pre-v4.4.0
[4.4.0] - 2024-03-14 [YANKED]
Added
Expose location & tags, as seen in Box, to third party apps (requires runtime permission)
Support Philips BDL4650D
Troubleshooting: Local & online app update options
Support package install/uninstall policy
JS API: Stream options
JS API: Stream DRM
JS API: Stream track selection
JS API: Stream pause/resume
Experimental Remote Desktop
Fixed
Sony Bravia: Suppress IR remote control keys when Kiosk Mode is active (as was always intended) (since 4.3.0)
ExoPlayer: Gracefully handle transport streams containing no packets for an H.264 or AAC elementary stream that is declared in the PMT
File System JS API: Read correct mime type from files of popular image formats with a suffixed file extension (e.g. .png_w800_h600 is now image/png instead of application/octet-stream)
Update EULA to version 3.0
Setup wizard should no longer get stuck on Starting... in certain conditions
Correctly report proprietary timer settings
Proprietary timers can now be controlled using JS API
Use ADB to perform device management even on devices running Android 11+ with ADB-over-TCP enabled (previously limited to Android 7–10)
Connection should no longer switch from Ethernet to Wi-Fi as a fallback measure (since 4.0.0)
Vestel: Don't recreate main activity whenever IR lock state changes
Pick valid WebView implementation provider during setup on Android 7+
[4.3.12] - 2024-01-09
Fixed
Fix crash on Sharp PN-B series regarding Ethernet Restart (since 4.3.0)
Fix crash regarding Browser (since 4.3.11)
[4.3.11] - 2023-12-15
Fixed
Clicking on a <select> element no longer causes a crash
[4.3.10] - 2023-12-06
Fixed
App no longer crashes on Android 12 when granting permissions during setup
App no longer crashes on some devices when attempting to play <video> element
[4.3.9] - 2023-11-15
Fixed
Fallback Android TV launcher shows Notifications, Settings, and clock in the top right corner
Lenovo: Work around issues when using Browser JS API with Smart Rotate enabled
Improve startup time
Support Proprietary power timer policy (since 3.10.0)
[4.3.8] - 2023-11-03
Fixed
Taking full screenshots using a11y framework on API 30 now works again (since 4.3.3)
Improved process management during setup
[4.3.7] - 2023-10-31
Fixed
Fix crash on boot affecting Sony Bravia BPK provisioning (since 4.3.6)
[4.3.6] - 2023-10-30
Fixed
Sony Bravia BPK: App restart is no longer required to pick up provisioned content module and developer options
[4.3.5] - 2023-10-30
Fixed
IR lock no longer gets stuck when enabled on Sony Bravia (since 4.3.3)
[4.3.4] - 2023-10-29
Fixed
Background app setup doesn't end prematurely (since 4.3.3)
Correctly report service connection status
[4.3.3] - 2023-10-26
Fixed
Provision Content Module from flash drive
Correctly provision developer options from flash drive
Disable battery optimizations or disable Idle Mode
Devices without a battery no longer report battery stats
YOX: Correctly report display brightness (since 4.0.0)
[4.3.2] - 2023-10-05
Fixed
Starting applet in offline (when was already downloaded earlier)
[4.3.1] - 2023-10-02
Fixed
Critical: App no longer restarts when uploading crash reports (since 4.3.0)
[4.3.0] - 2023-10-01
Added
Sony Bravia: Suppress IR remote control keys when Kiosk Mode is active (as was always intended)
Developer Option: Hotel Mode (enables IR RC and user power control in Kiosk Mode)
Developer Option: Video Scaling Mode
Fixed
Critical: Correctly migrate Demo Mode Device UID from Core App 3.x (since 4.0.0)
JS API: Support MEDIA_NEXT, MEDIA_PREVIOUS, MEDIA_RECORD, INFO, GUIDE, CAPTIONS, MEDIA_AUDIO_TRACK key codes
Philips 10BDL3051T: Manage network adapters in order to keep connectivity
Setup: Improve process stability
Setup: Correctly handle android.permission.POST_NOTIFICATIONS on Android 13
Persist device name and organization name across app restarts and reboots
Sony Bravia: Wi-Fi MAC address contributes to device UID for new installations
BenQ SL: Report correct Android firmware type in case the scaler chip firmware doesn't match
Report Wi-Fi SSID and signal strength on Android 9+
Correctly report storage volumes after first run
JS API: Always report internal0 volume backed by app-private storage
Revert "Transitioning between videos should be faster on most devices" as unreliable (since 4.2.0)
[4.2.8] - 2023-10-02
Fixed
Critical: Correctly migrate Demo Mode Device UID from Core App 3.x (since 4.0.0)
Correctly report storage volumes after first run (since 4.0.0)
Revert "Transitioning between videos should be faster on most devices" as unreliable (since 4.2.0)
[4.1.4] - 2023-10-02
Fixed
Critical: Correctly migrate Demo Mode Device UID from Core App 3.x (since 4.0.0)
Correctly report storage volumes after first run (since 4.0.0)
[4.0.2] - 2023-10-02
Fixed
Critical: Correctly migrate Demo Mode Device UID from Core App 3.x (since 4.0.0)
Correctly report storage volumes after first run (since 4.0.0)
Re-enable JS API OSD (since 3.17.0)
Video: Retry playback once after decoder initialization error
Video: Video prepare API no longer gets stuck sporadically (since 3.13.0)
Respect Extract video size developer option (since 3.11.0)
[4.2.6] - 2023-08-10
Fixed
ExoPlayer: Replaying the same video works again (since 4.2.0)
[4.2.5] - 2023-07-26
Fixed
ExoPlayer: Display correctly videos with non-square pixels
[4.2.4] - 2023-07-24
Fixed
Remove dependency on BatteryManager
Setup: Improve ADB connection handling
ExoPlayer: Improve behavior on devices lacking video prepare support
[4.2.2] - 2023-06-29
Fixed
Critical: Using browser API no longer causes a crash (since 4.2.0)
[4.2.1] - 2023-06-27
Fixed
Setup process is now slightly faster
[4.2.0] - 2023-06-26
Added
Expose public key for ADB authentication for automation
Update Core App using Content Module
Provision Developer Options using an external file
Fixed
Developer Options: Allow cleartext traffic now affects WebView
Allow android.permission.SYSTEM_ALERT_WINDOW for remotely installed apps on Android 10+
Transitioning between videos should be faster on most devices
JS API, USB Serial: Support Prolific HXN
Geolocation HTML permission requests are now automatically approved for applets on Android 4.4
Setup process is now more resilient to lowmemorykiller system daemon
[4.1.2] - 2023-06-07
Fixed
Video: Retry playback once after decoder initialization error
Video: Video prepare API no longer gets stuck sporadically (since 3.13.0)
[4.1.1] - 2023-06-05
Fixed
Re-enable JS API OSD (since 3.17.0)
Vestel: Disable automatic system update dialog
Respect Extract video size developer option (since 3.11.0)
JS API: Support HOME, CHANNEL_UP, and CHANNEL_DOWN key codes
Sony Bravia: Disable the system launcher in order to intercept the HOME button
[4.1.0] - 2023-05-10
Added
Fixed
Setup: Manage more permissions interactively on unsupported devices
Setup: Offer to enable Philips SICP
Setup: Offer to set Sharp's Monitor Control Select to Application
[4.0.0] - 2023-04-20