The Qabel Android Client
Qabel consists of multiple Projects:
- Qabel Android Client
- Qabel Desktop Client
- Qabel Core is a library that includes the common code between both clients to keep them consistent
- Qabel Drop Server is the target server for drop messages according to the Qabel Drop Protocol
- Qabel Accounting Server manages Qabel-Accounts that authorize Qabel Box usage according to the Qabel Box Protocol
- Qabel Block Server serves as the storage backend according to the Qabel Box Protocol
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.
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:
Usage of Android Studio with the Kotlin plugin is recommended for development
You can run the tests with the following gradle tasks:
./gradlew testDeveloperDebugUnitTestruns the local unit tests
./gradlew spoonDeveloperDebugAndroidTestruns all instrumentation tests on all connected devices and emulators
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.
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
The test server addresses are hard coded in TestConstants.java and the live servers are configured in a string ressource
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.