Demo Mode is Chrome OS device set-up intended to run in retail environment. The goal is to let retail customers try out Chrome OS devices, and get a feel of their capabilities, including running Android apps.
Demo Mode is implemented as a Managed Session, by enrolling the device into a special demo domain, using “cros-demo-mode” requisition. Enrollment will set up policies that control Demo Mode sessions, and specify auto-launched Demo Mode device local account. Additionally, Demo Mode setup will install cros-component containing assets needed to run Demo Mode. For example:
Demo Mode can be set up on unowned devices only. Demo Mode setup is initiated from the Welcome Screen in OOBE by pressing Ctrl + Alt + D
key combination, or tapping the screen 10 times. This will show a prompt asking the user to confirm they want to set up Demo Mode. Accepting the prompt will start off Demo Mode setup.
Demo Mode setup goes through the following steps:
Demo Mode setup can be cancelled up to the last step.
Provided that they have Offline Demo Mode Resources cros-component installed on the device's stateful partition, demo mode can be set up using offline Demo Mode set up. Offline Demo Mode setup does not require communication with the DM Server, thus requiring no network connectivity. The device will be enrolled in a fake domain, using a signed Demo Mode policy blob loaded from the offline-demo-mode enabled device. Offline Demo Mode setup can be started by skipping network selection in the Network screen (an option only available on devices that have Offline Demo Mode Resources pre-installed).
Offline Demo Mode Resources cros-component is a pre-installed version of Demo Mode Resources cros-somponent that includes resources that would normally be downloaded during online Demo Mode setup - for example, the Highlights App (an app that highlights Chrome OS features).