All Projects → wireapp → cryptobox-jni

wireapp / cryptobox-jni

Licence: GPL-3.0 License
JNI bindings for cryptobox with support for cross-compilation to Android.

Programming Languages

java
68154 projects - #9 most used programming language
c
50402 projects - #5 most used programming language
Makefile
30231 projects
Dockerfile
14818 projects
shell
77523 projects

Wire

This repository is part of the source code of Wire. You can find more information at wire.com or by contacting [email protected].

You can find the published source code at github.com/wireapp.

For licensing information, see the attached LICENSE file and the list of third-party licenses at wire.com/legal/licenses/.

cryptobox-jni

JNI bindings for the cryptobox with support for cross-compilation to Android.

Building

There is a Docker file that create an image to cross compile on all necessary platforms. You need to have Docker running on your machine.

Run ./docker-build.sh to start the build. It will download Android SDK and NDK, so it will take a while.

Once the script is completed, you will find the result of the compilation copied to the output/ folder.

Publishing

Locally

If Maven is installed (availble on homebrew), you can publish the aar to a your local Maven repository with the command:

mvn install:install-file \
	-Dfile="<path to aar>" \
	-DgroupId=com.wire \
	-DartifactId=cryptobox-android \
	-Dpackaging=aar \
	-Dversion=<version number>

Bintray

In order to publish the binary to Bintray, you need to install the JFrog CLI (jfrog-cli-go), configure the credentials and then run publish.sh

Sample Application

This project has a simple Android sample application that can be installed on a connected Android device or emulator:

cd android-example && make install

Look for an application named CryptoBoxExample.

Tests

Currently this project's tests run only on Android and require a connected Android device or emulator:

cd android-example && make test

The test project is located in the android-example/tests directory.

Contribute

For any problems, comments, or feedback please create an issue here on GitHub.

Licence

This project is released under the GNU General Public License v3.0.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].