Skip to content
Projects

PurpleI2P/i2pd-android has 350 GitHub stars and 40 forks. GitHot measured +1 in 7 days. Last checked 2026-11-09 14:52 UTC. Last push 2026-10-24.

How these counts are measured

i2pd for Android

Measured star growth

in 24h
Update delayed
in 7 days
+1
in 15 days
Update delayed
in 1 month
Update delayed

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

README.md

Original

GitHub release License Android CI Downloads

i2pd android

This repository contains Android application sources of i2pd

Get it on F-Droid

Bounties & Donations for this app

Team

  • Lead dev: Hypnosis aka nonlin-lin etc
  • Releases, merging into PurpleI2P: R4SAS
  • Sometimes, fixes & improvements: WipedLifePotato
  • Sometimes, merging into PurpleI2P: orignal

How to build

Install build tools

OpenJDK 17+, make, cmake, perl, curl and zip are required.

sudo apt-get install openjdk-17-jdk make cmake perl curl zip

Gradle itself is provided by the wrapper (./gradlew).

Download and prepare Android SDK for building

Android SDK command line tools are available here:

https://developer.android.com/studio#command-line-tools-only

Install them (to /opt/android-sdk for example) together with required packages. The platform must match compileSdk and the NDK version must match ndk in gradle/libs.versions.toml. Build-tools version is the default one of Android Gradle Plugin:

./cmdline-tools/bin/sdkmanager --sdk_root=/opt/android-sdk "platforms;android-37.0" "build-tools;36.0.0" "ndk;29.0.14206865"

Clone repository with submodules

git clone --recurse-submodules https://github.com/PurpleI2P/i2pd-android.git
cd i2pd-android

Build native dependencies

Release archives of Boost, OpenSSL and miniupnpc are downloaded into binary/jni/deps and checked against sha256 sums from binary/jni/fetch_deps.sh (for an offline build put the archives there beforehand). OpenSSL is built with its own Configure, Boost libraries and miniupnpc are compiled by ndk-build together with i2pd. Results are cached, so the script only rebuilds what changed:

export ANDROID_HOME=/opt/android-sdk
export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/29.0.14206865

binary/jni/build.sh

Compile application

./gradlew assembleDebug

You will find APKs in app/build/outputs/apk.

For signed release builds create keystore.properties in the project root with storeFile, storePassword, keyAlias and keyPassword, then run ./gradlew assembleRelease.

Standalone binaries

binary/jni/build.sh -b builds the i2pd executable for all ABIs into binary/libs, contrib/binary_pack/build-archive packs them into a zip.

Building on Windows

For building on Windows you must use MSYS2 with mingw64 or ucrt64 shell and preinstalled make, perl and curl.

Download Android SDK command line tools for Windows, unpack and install it replacing --sdk_root= path.

ANDROID_HOME variable must point to SDK using linux-way path, like /c/dev/android-sdk when SDK installed to C:\dev\android-sdk.

Release signing

Current releases signed with certificate fingerprint (SHA-256):

FC:C3:C7:34:9E:22:6A:77:B3:70:46:BB:00:FD:04:BB:A5:30:32:21:01:F8:62:F3:6D:8C:3D:B0:EB:B6:35:20

Explore related projects