Skip to content

Reliability and Kiosk

Gibson Bell edited this page Jul 14, 2026 · 6 revisions

Reliability and Kiosk

Tilecast separates requested policy from confirmed Android capability. Selecting a reliability mode in Studio does not prove that the device or firmware supports it.

Reliability modes

Standard Reliability

Works with a normally installed APK and provides:

  • cached startup
  • boot recovery attempts
  • immersive fullscreen
  • keep-awake behavior
  • bounded playback recovery
  • persistent safe mode
  • optional Accessibility Control Assist

Android can still allow a user to leave the app.

Managed Kiosk

Managed Kiosk is effective only when Android confirms:

  • compatible device-owner or device-policy provisioning
  • active lock task

Provisioning may require a factory reset and ADB, QR enrollment, or manufacturer-specific setup. Tilecast does not silently turn an existing consumer TV into a managed device.

When Managed Kiosk is requested but not confirmed, Studio reports the effective mode as Standard Reliability.

First-run commissioning

Every newly paired player completes a local wizard. It verifies or configures:

  • maintenance PIN
  • Accessibility Settings
  • unknown-app installation permission
  • boot return
  • immersive mode
  • keep-awake behavior
  • cached fallback availability
  • self-test
  • final readiness reporting

Protected Android settings require a person to use Android's system UI. Tilecast does not mark them complete based only on a server policy.

Use Run setup again from the local maintenance menu when a permission or device configuration changes.

Zero-Touch Readiness

Studio summarizes readiness from reported capability and commissioning results.

Typical states:

  • Ready: required checks passed
  • Partially ready: commissioned, but one or more requested capabilities are unavailable or incomplete
  • Needs setup: commissioning is incomplete
  • Unsupported: a required platform capability is explicitly unavailable

This status describes the Android player. Physical TV power and input behavior are recorded separately.

Active hours

Active hours define when ordinary presentation should run.

Outside active hours, Player:

  • saves state
  • stops media decoding
  • releases keep-screen-on
  • pauses ordinary presentation
  • uses device sleep when authorized
  • otherwise displays true black

An emergency overrides off-hours sleep or black-screen behavior.

Overnight ranges are supported. An end time at or before the start belongs to the following day.

Power Assist

Power Assist uses Android device sleep and wake behavior. Some devices may relay that through HDMI-CEC.

Tilecast does not send raw HDMI-CEC commands.

A resumed Android process does not prove that the physical TV:

  • powered on
  • selected the correct input
  • woke from standby
  • is showing Tilecast

Use the per-screen physical confirmation workflow and record the exact model and firmware.

Accessibility Control Assist

Accessibility Control must be enabled locally in Android Accessibility Settings.

It can:

  • observe foreground package changes
  • wait and return to Tilecast
  • request Android's global lock action for Power Assist

It cannot:

  • read window text or passwords
  • click controls
  • perform gestures
  • approve an installer
  • navigate Settings for the user
  • change network configuration

Settings, package installers, permission controllers, captive portals, setup components, and configured maintenance apps are excluded. Automatic return pauses during maintenance and updates.

Recovery and safe mode

The recovery supervisor uses bounded steps:

  1. retry
  2. skip failed item
  3. recreate renderer
  4. recreate playback session
  5. restart activity
  6. bounded process recovery
  7. safe mode

Safe mode avoids an endless crash loop. It preserves:

  • pairing
  • networking
  • health reporting
  • commands
  • local maintenance
  • cache validation
  • manual recovery

It does not delete credentials or content.

Boot recovery

Player listens for normal and locked boot completion, requests a foreground launch, and retries after bounded delays.

Some firmware blocks background activity launch. Tilecast reports that limitation instead of claiming recovery succeeded.

Local maintenance menu

Default remote sequence:

Back, Back, Up, Down, Select

The first use creates a 4–12 digit PIN. Only a salted password hash is stored. Failed attempts are rate-limited.

Maintenance provides fixed actions for:

  • Android network and settings pages
  • Accessibility Settings
  • unknown-app installation permission
  • safe-mode recovery
  • Tilecast restart
  • return to playback

It is not a shell or arbitrary app launcher.

What still requires physical testing

Test each device and firmware for:

  • launch after power restoration
  • Accessibility Control
  • unknown-app install flow
  • standby and wake
  • TV power response
  • HDMI input selection
  • remote focus
  • update approval
  • recovery after Wi-Fi and server outages

See Known Limitations before advertising zero-touch or kiosk capability.

Clone this wiki locally