/android-app

Official IVPN Android app

Primary LanguageCGNU General Public License v3.0GPL-3.0

IVPN for Android

Build CodeQL

IVPN for Android is a native app built using Java and Kotlin languages. Some of the features include: multiple protocols (OpenVPN, WireGuard), Kill-switch, Multi-Hop, Trusted Networks, AntiTracker, Custom DNS, Always-on VPN, Start on boot and etc. IVPN Android app is distributed on the Google Play Store, F-Droid, and Accrescent.

About this Repo

This is the official Git repo of the IVPN for Android.

Installation

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Requirements

  • Android SDK (can get from Android Studio)
  • Java
  • Kotlin (can get from Android Studio)
  • Git
  • Gradle

Dependencies

Project dependencies:

Deployment

There are 2 different product flavours in the project. First - spread, which value can be "store" or "site". "Site" spread flavour contains additional features(like Antitracker) that are not allowed in Google Play Store. Also, the differences in payment methods.

Second product flavour - API, there are two of them: stage and production.

So based on flavours and build types(release, debug) eight active build variants are available:

siteProductionDebug
siteProductionRelease
siteStageDebug
siteStageRelease
storeProductionDebug
storeProductionRelease
storeStageDebug
storeStageRelease

You can use each of them to build the application by Gradle from the command line or from Android Studio.

Versioning

Project is using Semantic Versioning (SemVer) for creating release versions.

SemVer is a 3-component system in the format of x.y.z where:

x stands for a major version
y stands for a minor version
z stands for a patch

So we have: Major.Minor.Patch

Contributing

If you are interested in contributing to IVPN for Android project, please read our Contributing Guidelines.

Security Policy

If you want to report a security problem, please read our Security Policy.

Signing certificate hash

IVPN Android app SHA-256 signing certificate hash:

88a6b40fc97fdc842f231f50eb12de116f5b759e3c5b38aaccaf6a7b393c85bb

The same SHA-256 hash is also published on the IVPN website.

License

This project is licensed under the GPLv3 - see the License file for details.

Authors

See the Authors file for the list of contributors who participated in this project.

Acknowledgements

See the Acknowledgements file for the list of third party libraries used in this project.