/openxc-android

Android library for accessing vehicle data from an OpenXC vehicle interface

Primary LanguageJavaBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

OpenXC Android Library

Build Status

Stories in Ready

This library is a part of the [OpenXC][] project.

This Android library contains the tools required to read vehicle data from the vehicle's CAN bus through the OpenXC vehicle interface in any Android application.

Visit the [OpenXC][] project page for installation instructions, usage details and the source code documentation.

Building from Android Studio

Make sure you have Android SDK 22 installed (the default in newer versions of Android Studio might be later, e.g. 23 - you need to install SDK 22 to build OpenXC).

Open the library or enabler projects in Android Studio - done!

Tests

To run the unit tests suite:

$ ./gradlew test

To run the instrumentation tests (must have an attached Android device or emulator):

$ ./gradlew conectedCheck

Building from Command Line

The project requires Android Studio and is configured to build with Gradle.

Releasing the App and Library

  • Bump the major, minor or patch version in build.gradle.
  • Update CHANGELOG.mkd.
  • Merge into master, run fab release to tag and push to GitHub.
  • Travis CI will take care of the rest.

The release of the Enabler to the Play store and the library to JCenter and the Maven Central Repository is managed automatically with Travis CI. The Travis build environment must be configured with these encrypted environment variables:

  • BINTRAY_USER - username at Bintray that is an owner of the openxc-android artifact.
  • BINTRAY_API_KEY - API key for the user at Bintray.
  • KEYSTORE_PASS - password to the release keystore in this repository.
  • ALIAS_NAME - alias of the release key in the keystore.
  • ALIAS_PASS - password for the release key.
  • SERVICE_EMAIL - Google Play service account email, for API access to the Play store.
  • BUGSNAG_TOKEN - Bugsnag API key, used to upload the Proguard mapping during the build and crash reporting in the release version of the app.

If you want to deploy from a local machine, you can either define those in your environment or in the local.properties file.

Contributing

Please see our Contribution Documents.

License

Copyright (c) 2011-2013 Ford Motor Company Licensed under the BSD license.

[binding]: http://developer.android.com/guide/topics/fundamentals/bound-services.html#Binding) [services]: http://developer.android.com/guide/topics/fundamentals/services.html [AIDL]: http://developer.android.com/guide/developing/tools/aidl.html [OpenXC]: http://openxcplatform.com