Skip to content

Qabel/qabel-android

Repository files navigation

Build

The Qabel Android Client

This project provides a Client for Qabel targeting Android. It is a small part of the qabel platform.



Introduction | Install | Getting Started | Usage | Structure | Contribution

Introduction

For a comprehensive documentation of the whole Qabel Platform use https://qabel.de as the main source of information. http://qabel.github.io/docs/ may provide additional technical information.

Qabel consists of multiple Projects:

Install

Official distributions of the Qabel Android Client are provided by the official Qabel website at https://qabel.de/de/qabelnow and via Google Play. Everything below this line describes the usage of the Qabel Android Client for development purposes.

Getting started

  • Install the Android SDK

  • Install the SDK version 23. Make sure you install the "Android Support Repository" and the latest "Android SDK build-tools"

  • Install the NDK

  • Checkout the project from git

  • Create the file /qabelbox/src/main/res/values/params.xml with the following contents:

    <resources> <string name="hockeykey">dummykey</string> </resources>

  • Create a local.properties file at the root of your source checkout and add an sdk.dir and ndk.dir entry to it. For example:

      sdk.dir=/opt/Android/SDK
      ndk.dir=/opt/Android/NDK
    
  • Run ./gradlew build

  • Usage of Android Studio with the Kotlin plugin is recommended for development

Usage

You can run the tests with the following gradle tasks:

  • ./gradlew testDeveloperDebugUnitTest runs the local unit tests
  • ./gradlew spoonDeveloperDebugAndroidTest runs all instrumentation tests on all connected devices and emulators

Development

To run the unit tests directly from Android Studio, you need to change the default options for the JUnit task. Change the vm-options to -ea -Djava.library.path=libs/ so that the android studio testrunner finds the crypto library we use.

Common errors

Cannot run program "".../aapt": error=2, No such file or directory

You are missing some libs for the 32bit aapt. For ubuntu try

sudo apt-get install lib32stdc++6 lib32z1

Structure

The test server addresses are hard coded in TestConstants.java and the live servers are configured in a string ressource servers.xml

Contribution

For issues using the Qabel Android Client, use the feedback feature inside the app (Settings -> Feedback).

Otherwise, use the Issue tracker of GitHub.

Please read the contribution guidelines at https://github.com/Qabel/qabel-core/blob/master/CONTRIBUTING.md carefully.