vincentbernat / dashkiosk-android

Android application for Dashkiosk

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This repository contains the Android application to be used with Dashkiosk. Its documentation is on ReadTheDocs.

Build Status

Compilation

As a prerequisite, download the Android SDK, unpack it and ensure bin/android is somewhere on your PATH. Then, to compile, just use:

./gradlew assemble

To just build a debug APK, use:

./gradlew --daemon assembleDebug

If the build process complains about licensing, you need to manually accept the licenses with the SDK manager GUI tool.

The embedded certificates are just here as an exemple. Only the client certificate (along with the key) will be bundled in the application. Since the CA shouldn't be used anywhere, it shoudn't be a security risk. But you can remove the symbolic link in res/raw. Have a look at certificates/generate script to understand how those certificates were generated.

Currently, ensure that you store only one keypair in the keystore. The Android application will always use the first certificate.

About Dashkiosk

Dashkiosk is a solution to manage dashboards on multiple screens. It comes as four components:

  1. A receiver runs in a browser attached to each screen and will display the requested dashboards. The receiver is quite dumb, it contacts the server and wait for it to tell which URL to display.

  2. A server which will manage the screens by sending them what they should display. An administration interface allows the user to manage those screens individually or in a group.

  3. An Android app that will run the receiver. This is mainly a fullscreen webview built on top of Crosswalk to get access to an up-to-date browser engine.

  4. A Chromecast custom receiver which will run the regular receiver if you want to display dashboards using Google Chromecast devices.

Limitations and non-limitations

The Dashkiosk application for Android has a few perks, notably the support of WebGL and decent performance, thanks to the accelerated webview.

However, here are a few limitations:

  • inability to login through a web form
  • inability to preset a cookie (this could be a workaround for the limitation above and this should not be too complicated to do, open an issue if needed)
  • inability to use several client certificates, see XWALK-6025)

About

Android application for Dashkiosk


Languages

Language:Java 92.2%Language:Shell 7.8%