[![GitHub release](https://img.shields.io/github/release/PurpleI2P/i2pd-android.svg?label=latest%20release)](https://github.com/PurpleI2P/i2pd-android/releases/latest) [![License](https://img.shields.io/github/license/PurpleI2P/i2pd-android.svg)](https://github.com/PurpleI2P/i2pd-android/blob/openssl/LICENSE) [![Android CI](https://github.com/PurpleI2P/i2pd-android/actions/workflows/android.yml/badge.svg)](https://github.com/PurpleI2P/i2pd-android/actions/workflows/android.yml) # i2pd android This repository contains Android application sources of i2pd [Get it on F-Droid](https://f-droid.org/packages/org.purplei2p.i2pd/) ## How to build ### Install OpenJDK 11+, g++, rename (used for building modules), gradle 5.1+ ```bash sudo apt-get install g++ rename openjdk-11-jdk gradle ``` If your system provides gradle with version < 5.1, download it from gradle homepage: https://gradle.org/install/ ### Download and prepare Android SDK for building Android SDK Available here: https://developer.android.com/studio#downloads Download Android SDK, unpack it to temporary directory `/tmp/anrdoid-sdk` and install it (in `/opt/android-sdk` for example) with required packages ```bash mkdir /tmp/android-sdk cd /tmp/android-sdk wget https://dl.google.com/android/repository/commandlinetools-linux-8092744_latest.zip unzip commandlinetools-linux-8092744_latest.zip # install required tools ./cmdline-tools/bin/sdkmanager --sdk_root=/opt/android-sdk "build-tools;31.0.0" "cmake;3.18.1" "ndk;21.4.7075529" ``` ### Clone repository with submodules ```bash git clone --recurse-submodules https://github.com/PurpleI2P/i2pd-android.git ``` ### Compile application ```bash export ANDROID_SDK_ROOT=/opt/android-sdk export ANDROID_NDK_HOME=$ANDROID_SDK_ROOT/ndk/21.4.7075529 pushd app/jni ./build_boost.sh ./build_openssl.sh ./build_miniupnpc.sh popd gradle clean assembleDebug ``` You will find APKs in `app/build/outputs/apk`