ConsumerVPN is a White Label VPN Application intended to make it easy to create new VPN applications for Android platforms.
-
ii. OS Requirements
-
i. App Colors
ii. App Icons
To compile this project account information has to be provided by an account manager, if you are interested in using this project please reach out to partners@wlvpn.com
The Information needed to start:
- PackageCloud token
- Account Name
- Auth Suffix
- API Key
- IPGEO URL
- Test Username and password
- Android Studio 3.1
- Java 17
- Minimum Android SDK 21 (Android 5).
- Currently supports Android SDK 34 (Android 14 Upside-down cake).
PackageCloud is our package management tool of choice for distributing and updating all packages related to the VPN SDK.
A key is needed and should be provided by your account manager.
Set the package cloud key obtained in the root project build.gradle (consumervpn2-android/build.gradle) file.
buildscript {
ext.kotlin_version = '1.9.20'
ext.packagecloud_token = "YOUR_PACKAGE_CLOUD_TOKEN"
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:8.3.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
allprojects {
repositories {
google()
jcenter()
maven {
url "https://packagecloud.io/priv/${packagecloud_token}/cloak/android-vpn-sdk/maven2"
}
}
}All VPN SDK keys are available at strings_vpn_sdk_config.xml, those should be provided by your account manager:
- account_name - Name of the account.
- auth_suffix - Suffix of the account, normally used for VPN authentication (if no auth_suffix was provided, use account_name).
- api_key - Key that grants access to the specific account.
- ip_geo_url - URL for the IPGeo endpoint associated with the account.
The client must provide
-
Support URL - Support related URL.
-
Forgot password URL - The application does not have an implementation for a user to recover his password, the user has to go to a web page to do so.
<string name="support_url" translatable="false">https://www.wlvpn.com/</string> <string name="forgot_password_url" translatable="false">https://www.wlvpn.com/</string>
This project uses the Gradle build system, we provide different Build Types and Flavors to facilitate testing.
Build Types
- Debug - The application is fully debuggable with code optimizations turned off for faster build times.
- Staging - Same as Debug, with a different endpoint for testing new unreleased backend features.
- Release - Code optimization and obfuscation are turned on.
Product Flavors
- Mobile - Compatible with Mobile devices.
- TV - Compatible only with TV devices.
Once you have cloned the code, select the default Run Configuration app and run it on your target device.
By default, ConsumerVPN follows Google's Material design
- You can find the main application colors under
values/base_colors.xml - All other custom colors are under
values/colors.xml
All of the colors have already been placed by category. Follow name descriptions and you can theme your app by replacing current values.
Replace current app icons. We recommend creating your app icons using
Android Studio to accomplish this right click on the res folder and
choose New -> Image Asset option. Follow the instructions for the
Launcher Icons (Legacy and Legacy) Icon Type. This should override
all icons or create new icons for the selected flavor.
This VPN white-label solution follows Google Material Design principles.
It is recommended to consider these principles while branding your application:
This app's architecture follows the Clean Architecture guidelines; and is a custom implementation.