Skip to content
Mobile client for Mysterium Network
Kotlin Ruby Other
Branch: master
Clone or download
anjmao Merge pull request #183 from mysteriumnetwork/reconnect-openvpn
Reconnect active OpenVPN session when network connection changed
Latest commit 72c9154 Feb 18, 2020
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
android Merge pull request #183 from mysteriumnetwork/reconnect-openvpn Feb 18, 2020
fastlane Run tests and build app in docker CI Jan 7, 2020
ios
util_scripts Implement local Mysterium node development Apr 30, 2019
.dockerignore Run tests and build app in docker CI Jan 7, 2020
.gitignore Run tests and build app in docker CI Jan 7, 2020
.gitlab-ci.yml Run tests and build app in docker CI Jan 7, 2020
.watchmanconfig Mysterion prototype developed with React-native Jun 28, 2018
Brewfile Add Brewfile (#34) Nov 6, 2018
Dockerfile Run tests and build app in docker CI Jan 7, 2020
Gemfile Tooling for android releases (#13) Oct 19, 2018
Gemfile.lock Rewrite in native Android (#175) Dec 3, 2019
LICENSE Add license Feb 13, 2019
README.md Update release to internal docs Jan 29, 2020
app.json Update app name to MysteriumVPN Dec 14, 2018

README.md

MysteriumVPN mobile app

Application for VPN using Mysterium Network.

Get it on Google Play

Running manually

Android

Setup to run on actual device

  • brew cask install android-platform-tools or Install ADB
  • Connect Android phone, check if adb can see it:
adb devices

Setup Emulator

  1. Download Android Studio
  2. Android Studio comes with JDK preinstalled, but in case that version doesn't work, you need JDK 1.8
  3. Setup Emulator in Android Studio and start it

Run Android:

Install Android SDK, export ANDROID_HOME to SDK location, i.e.:

export ANDROID_HOME=/Users/<username>/Library/Android/sdk/

Run app on default device (connected or emulator)

Open Android Studio and click Run button :)

Android Releases

cp fastlane/.env.local.dist fastlane/.env.local
vim fastlane/.env.local
  • Setup Fastlane, more info in fastlane/README.md
Local development
  • 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')
Building release APK
  • Install Fastlane (if don't have it yet)

    brew cask 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
Internal release
  • Increase bundle_release versionCode + 1 in fastlane/Fastlane file.

  • Build and publish internal release:

source fastlane/.env.local && fastlane android internal

iOS

iOS App is under development.

Android build error

* What went wrong:
A problem occurred configuring project ':react-native-fabric'.
> Could not resolve all artifacts for configuration ':react-native-fabric:classpath'.
   > Could not find lint-gradle-api.jar (com.android.tools.lint:lint-gradle-api:26.1.2).

related to issue waiting on fix

to fix run:

./util_scripts/fix-react-native-fabric-gradle

If you come across an error command not found: gsed, you can fix it on OSX by running:

brew install gnu-sed

Contributing

Android

Bump mobile-node version

  • To Update implementation "mysterium.network:mobile-node:0.5-rc" line in ./android/app/build.gradle, published versions can be found here.
  • Node usage can be found in MainActivity.kt.

Native android logs

To see native android logs, use Logcat:

adb logcat
You can’t perform that action at this time.