Skip to content

Repository files navigation

OpenRemote Android Console

CI/CD Maven Central Open Source? Yes!

Android console application and library for OpenRemote.

OpenRemote applications are web applications which can run in a browser or inside a native console. This project provides the Android console implementation, based on an Android WebView with native integrations exposed to the web application.

Supported native functionality includes:

  • Firebase Cloud Messaging push notifications
  • Geofencing and location services
  • Secure local storage
  • QR code scanning
  • ESP32 provisioning over Bluetooth Low Energy (BLE)

Android app

The generic OpenRemote Android app can connect to an OpenRemote Manager deployment and is available from Google Play.

See Using OpenRemote on mobile for setup and usage information.

Repository structure

ORLib

Reusable Android library containing the OpenRemote WebView integration and native console providers.

Applications can use ORLib as the basis for a customised OpenRemote Android app.

Published to Maven Central as:

io.openremote:orlib

GenericApp

Generic Android application built on top of ORLib.

This is the basis of the official OpenRemote Android app and can also be used as an example implementation.

Available from:

protobuf

Protocol Buffer definitions and generated classes used by ORLib, mainly for ESP32 provisioning.

Published to Maven Central as:

io.openremote:orlib-protobuf

iOS

OpenRemote also provides native console support for iOS:

Documentation

Relevant OpenRemote documentation:

See docs.openremote.io for the complete documentation.

Development

The project can be opened in Android Studio.

The build uses JDK 17 and the Gradle wrapper included in this repository.

Build all modules with:

./gradlew assemble

Code formatting

Formatting is managed using Spotless.

Apply formatting:

./gradlew spotlessApply

Check formatting:

./gradlew spotlessCheck

spotlessCheck is also run by CI.

License

OpenRemote is licensed under the GNU Affero General Public License v3.0 or later.