Android application

This is a simple Android application whose purpose is to display fullscreen non-interactive dashboards on Android devices. Its main use is to be run from an Android stick plug on some TV to run the web application to display dashboards.

Supported devices

Currently, the minimal version of Android is 4.2 (Jelly Bean). It may work with earlier versions but it has not been tested. Dashkiosk is using the Crosswalk project to provide an up-to-date webview with support of recent technologies.

There are a lot of Android devices that you can choose to run Dashkiosk on. When choosing one, prefer the ones which can be upgraded to Android 4.4.

Features

  • It registers as a possible home screen. It is therefore to run the application on boot.
  • It provides a really fullscreen webview. Absolutely no space lost in bars.
  • No possible interactions. If run on a tablet, the user is mostly locked out. However, there are still some way to interact with the device while the application is running by invoking the settings and changing the home application from here.
  • Prevent the device going to sleep.

Compilation

If you don’t want to compile the Android app yourself, you can download a pre-compiled version from GitHub.

You need to download the Android SDK. Once installed, you should manage to get the android command in your path. Execute the remaining steps:

  1. Get a nightly Crosswalk build like this one (you can pick a more recent one if needed). Unpack it in some directory and execute the following command:

    android update lib-project -p .
    
  2. Grab the latest tarball for Dashkiosk from GitHub.

  3. Unpack it and go into the android directory.

  4. Execute the following command to update the project:

    android update project -p .
    
  5. Update the path to Crosswalk in project.properties. This must be a relative path.

  6. Build the application with the following command:

    ant debug
    

At the end of the compilation, you get bin/DashKiosk-debug.apk that should be installed on the Android device.

Installation

Ensure you have adb available in your path. If not, it is available in the platform-tools directory. You can then install the APK on a device attached through USB on your computer with the following command:

adb install -r bin/DashKiosk-debug.apk

Alternatively, you can just point a browser to the APK and you will get proposed to install it. You need to ensure that you allowed the installation of APK from unknown sources.

The next step is to run the configuration panel. This panel can be accessed by using the back button while the loading screen is running. It can be accessed later by clicking on the pen icon in the action bar.

Configuration

The orientation is configured to landscape by default. You can choose either auto or portrait.

If you want to lock a bit the application, you can lock settings to prevent any further modifications. You can still revert the changes by invoking the preferences activity with adb:

adb shell am start -n \
   com.deezer.android.dashkiosk/com.deezer.android.dashkiosk.DashboardPreferences

The important part is to input the receiver URL. You can check that this is the correct URL with any browser. You should see a dashboard with some nice images cycling.

The timeout is not really important. Until the application is able to make contact with the receiver, it will try to reload the receiver if the timeout is reached.

Alternatively, the configuration can be done at compile-time by modifying res/xml/preferences.xml.

Usage

Once configured, just run the application as usual. You can also click on the home button and choose the application from here to make it starts on boot.

Troubleshooting

Still with adb, you can see the log generated by the application with the following command:

adb logcat -s DashKiosk AndroidRuntime

The log also includes Javascript errors that can be generated by the dashboards. Javascript errors from the receiver are prefixed with [Dashkiosk].