Posted:1 day ago|
Platform:
On-site
Full Time
VPN App Kotlin Modules
Note: All the functionalities listed below must work in sync with the selected VPN
protocol (WireGuard or OpenVPN - UDP/TCP). Behavior, compatibility, and toggling must
dynamically adapt based on the active protocol.
1. VPN Connection / Disconnection Handling
Description:
Manages the full lifecycle of VPN connection and disconnection events. This includes establishing
a connection, monitoring the session, and safely terminating it when needed. It ensures consistent
user experience and accurate state management in the app UI.
Key Functions:
• Initiate VPN connection on user action or auto-connect.
• Display real-time connection status (connecting, connected, reconnecting, disconnected).
• Handle reconnection logic on unstable networks or manual interruption.
• Gracefully stop the VPN session on user request or system triggers.
• Update UI components (buttons, status bar, indicators) based on VPN state.
Protocol Dependency:
• WireGuard: Requires setup and teardown of the tunnel using the wg-quick interface or
equivalent Kotlin library. Must manage keys and interface correctly.
• OpenVPN (UDP/TCP): Uses the OpenVPN management interface to control connection
and disconnection. Requires proper handling of .ovpn configuration files and callbacks.
Integration with Other Modules:
• Trigger Kill Switch if disconnection is unexpected.
• Reset IP Rotation timers and Packet Size settings on disconnect.
• Reapply Split Tunneling and DNS rules on reconnect.
2. Kill Switch (Toggle Button):
Description:
The Kill Switch is a core privacy feature that automatically blocks all internet traffic if the VPN
connection is unexpectedly lost or manually disconnected. This prevents the user’s real IP address
and data from being exposed.
Functionality:• Ensures continuous privacy by cutting off the internet when VPN is inactive.
• Can be toggled on or off by the user in the app settings.
3. Protocol Selection (Dropdown Menu):
Description:
Enables users to manually select the VPN protocol used for their connection. Different protocols
offer trade-offs in speed, security, and compatibility.
Supported Protocols:
• WireGuard – A modern, high-speed protocol known for its lightweight design and strong
encryption (ideal for performance).
• OpenVPN UDP – Offers fast speeds, best for streaming or general use.
• OpenVPN TCP – More reliable and stable, preferred in restrictive network environments.
Note:
Advanced users may choose protocols depending on network conditions, use cases, or device
compatibility.
4. LAN Accessibility (Toggle Button):
Description:
Allows users to access devices on their local network (e.g., printers, NAS, smart TVs) while
connected to the VPN. Traffic destined for local IP ranges is excluded from the encrypted tunnel.
Use Case:
Maintains access to local resources without interrupting the VPN tunnel for other internet traffic.
5. GPS Location Blocking (Toggle Button):
Description:
Provides an additional privacy layer by blocking access to the device’s GPS/location services while
the VPN is active. This prevents apps and services from using device-based location data, beyond
the masked IP location.
6. IP Address Rotation (Toggle Button):
Description:
This feature periodically rotates the user’s public IP address at fixed intervals, even while staying
connected to the same server and location. It adds an extra layer of anonymity and prevents long-
term tracking.
Behavior:• Rotation happens seamlessly in the background.
• Does not interrupt or drop the VPN connection.
7. Packet Size Optimization (Toggle Button):
Description:
Optimizes the size of IP packets sent through the VPN tunnel, which can improve performance and
stability on networks with high packet loss, congestion, or mobile data restrictions.
Use Case:
Especially useful for mobile networks and regions with unreliable internet infrastructure.
8. Web Shield / Clean Web (Toggle Button):
Description:
A security feature that proactively blocks malicious websites, intrusive ads, trackers, and phishing
links at the DNS level—before they reach the user's browser or device.
Benefits:
• Faster browsing experience.
• Reduced exposure to malware and ad-based tracking.
9. Bypassing Apps and Sites (Split Tunneling):
Description:
Allows users to choose specific apps or websites that should bypass the VPN tunnel and access the
internet directly. All other traffic continues to go through the secure VPN connection.
Benefits:
• Access local services or content without disconnecting the VPN.
• Avoids conflicts with apps that restrict VPN usage (e.g., some banking apps or streaming
platforms).
• Improves performance by reducing unnecessary traffic through the tunnel.
10. Bandwidth Usage Metrics (Connection Stats):
Description:
Displays real-time data usage statistics during each VPN session.
Metrics Tracked:
• Uploaded: Total amount of data sent during the session (e.g., 150 KB).
• Downloaded: Total data received while connected (e.g., 2 MB).Use Case:
Helpful for users tracking data consumption, especially on limited OR Metered language
IndustryFull-time
Techinventive Software Service Pvt
Upload Resume
Drag or click to upload
Your data is secure with us, protected by advanced encryption.
Browse through a variety of job opportunities tailored to your skills and preferences. Filter by location, experience, salary, and more to find your perfect fit.
We have sent an OTP to your contact. Please enter it below to verify.
Experience: Not specified
Salary: Not disclosed
Experience: Not specified
Salary: Not disclosed