Mobile VPN app for Mysterium Network.
- Install Android Studio
brew install --cask android-studio- Download project's firebase crashlytics config -
google-services.jsonfrom https://console.firebase.google.com/u/1/project/mysterium-vpn/overview and place it inandroid/app
-
Build Mysterium Node from source code:
util_scripts/build-node.sh
-
Uncomment local dependency in
android/app/build.gradle://implementation 'network.mysterium:mobile-node:0.8.1' implementation files('libs/Mysterium.aar')
-
Install Fastlane (if don't have it yet)
brew install fastlane
-
Make release build:
source fastlane/.env.local && fastlane android build
APK will be available under android/app/build/outputs/apk/release/app-release.apk
You can install this APK by:
- uploading it to phone, or
- using
adb install android/app/build/outputs/apk/release/app-release.apk
-
Get
google-services.json:- Go to https://console.firebase.google.com
- Open android project
- Download
google-services.json - Put it to
android/app/google-services.json
-
Create signing key:
keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
More info: https://facebook.github.io/react-native/docs/signed-apk-android#generating-a-signing-key
-
Setup values in environment:
cp fastlane/.env.local.dist fastlane/.env.local
vim fastlane/.env.local- Setup Fastlane, more info in fastlane/README.md
- Create a PR with bumped fastlane/android_version_code (Google play store requires new version code for each release).
- Ater merge to master create new tag in github repository. See example commit.
Public releases are promoted and managed from the Google Play Console.
- Update "mysterium.network:mobile-node" gradle dependency to a published version of mobile-node
