Bitmask Android Client
This repository contains the source code for the Bitmask Android client. Bitmask Android offers one-click free VPN service from trusted providers of the LEAP stack.
To learn about the stack, visit leap.se.
Please see the issues section to report any bugs or feature requests, and to see the list of known issues.
Table Of Contents
License
Installing
We will assume for convenience that you are installing on a Debian- or Ubuntu-based GNU/Linux machine. (Patches welcome with instructions for Mac, Windows, or other GNU/Linux distributions!)
The Bitmask Android Client has the following system-level dependencies:
- JDK 17
- Android SDK Tools, v. 34.0.3, with these packages:
- Platform-Tools, v. 34.0.5
- Build-Tools, API v. 34
- Platforms 34
- Android Support Repository
- Google Support Repository
- NDK v. r21e (enables C code in Android)
- For running the app in an emulator, you will also need these packages:
- Android Emulator
- System Images for Android APIs 30
- ics-openvpn submodule
- tor-android submodule
- bitmaskcore submodule
You can install them as follows:
JDK
Install with:
sudo apt-get update -qq && \
apt-get install -y openjdk-17-jdk
C Libraries
These are necessary to make sure the program cross-compiles openssl, openvpn, tor etc. for Bitmask Android.
sudo apt-get -y install make gcc swig file lib32stdc++6 lib32z1 autoconf autogen automake autopoint autotools-dev gettext-base libtool patch pkg-config mesa-utils
Android SDK
With Android Studio
All of the Android SDK and NDK packages are downloadable through Android Studio, which (sadly) is probably the most hassle-free way to go about things.
You can download Android studio here:
https://developer.android.com/studio/index.html
Once you've got it installed, use the SDK Manager
tool (Android figure Icon with blue arrow second from the right in the tool pane) to download all the Android SDK and NDK dependencies listed above.
With Bash
Alternatively (eg: for build machines), you may have a look at our docker build files in the docker directory
Updating Your Path
Once you've installed Android SDK & NDK packages, you need to modify your PATH so you can invoke all the programs you just installed. You can do that with something like the following in your ~/.shellrc
or ~/.bash_profile
:
export ANDROID_HOME=<path/where/you/installed/android/sdk>
export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/21.4.7075529
export PATH=$ANDROID_NDK_HOME:$PATH
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/tools/bin:$PATH