Quick Overview

To use v2rayNG reliably on Android, three things matter most: grant VpnService permission on first connect, add v2rayNG to the battery optimization whitelist to prevent background disconnects, and configure per-app proxy rules so specific apps use or bypass the proxy. This guide walks through each step and common pitfalls.

VpnService Permission

v2rayNG uses Android's VpnService mechanism to route traffic. When you tap the "Connect" button for the first time, the system shows a permission prompt. You need to tap "OK" to allow v2rayNG to create a VPN connection. If you deny the permission, v2rayNG won't work.

How to Confirm It's Active

After granting permission, a VPN icon appears in the system status bar. If the VPN icon disappears, the connection has dropped and you need to tap "Connect" again. Note: VpnService permission does not read or modify your personal data; it simply creates a virtual network interface.

What If You Accidentally Denied It

If you accidentally tapped "Deny", go to System Settings → Apps → v2rayNG → Permissions and re-grant the VPN permission, then return to v2rayNG and tap "Connect" again. Some Android devices (like Xiaomi and Huawei) also ask "Allow v2rayNG to run in the background?" — it's best to allow this, otherwise the connection may be interrupted by the system.

Open v2rayNG

Launch v2rayNG and select the server node you want to connect to.

Tap Connect

Tap the "Connect" button at the bottom right. The system will show the VpnService permission prompt.

Allow Permission

Tap "OK" to allow v2rayNG to create a VPN connection. A VPN icon appears in the status bar.

Verify Connection

Open a browser and visit a website to confirm traffic is routed through the proxy.

Battery Optimization Whitelist

Android's battery optimization may restrict v2rayNG's background activity, causing the proxy connection to drop unexpectedly. To fix this, add v2rayNG to the battery optimization whitelist.

How to Do It

Go to System Settings → Apps → v2rayNG → Battery and select "Unrestricted" or "Allow background activity". The exact path may vary slightly by Android version, but the goal is the same: make sure v2rayNG isn't suspended by the system.

OEM Skins Are Stricter

OEM skins like MIUI, EMUI, and ColorOS impose stricter background limits. In addition to battery settings, you may also need to allow v2rayNG to auto-start in "Auto-start management" and set "Battery saver" to "No restrictions". If v2rayNG keeps disconnecting, check these background restrictions first.

Per-App Proxy

Per-app proxy lets you specify which apps use the proxy and which don't. This is useful when you need to access both domestic and international services at the same time. The "Per-app proxy" setting in v2rayNG is located in the app settings.

Which Mode to Choose

After enabling per-app proxy, you can choose between "Apps that use proxy" and "Apps that bypass proxy" modes. For example, you can let your browser use the proxy while banking apps connect directly to avoid security risks.

Recommended Configuration

When setting up, it's best to start with "Apps that bypass proxy" mode and add sensitive or domestic apps like banking, payment, and maps to the exclusion list, while all other apps use the proxy by default. This way most apps go through the proxy without exposing sensitive apps to the proxy tunnel.

Per-App Proxy vs. Routing Rules

Per-app proxy controls traffic based on the app process, while routing rules control traffic based on the destination address. Both can be used together, but watch out for configuration conflicts.

Apps That Use Proxy

Recommended

Only selected apps use the proxy; all other apps connect directly. Ideal when you only want browsers and social apps to use the proxy.

Best for: everyday browsing

Apps That Bypass Proxy

All apps use the proxy except a few excluded ones (like banking and payment apps). Best for global proxy setups that need to exclude sensitive apps.

Best for: global proxy

Update Subscription

v2rayNG supports automatic subscription updates. In "Config" → "Subscription" you can set the update interval. It's recommended to set it to once a day or once a week to avoid excessive data usage. If a node stops working, you can trigger a manual update.

What If the Subscription Link Expires

After updating the subscription, the node list refreshes. If a node won't connect, tap "Update" in the subscription to pull the latest nodes, then test again. Some providers rotate subscription links periodically. If all nodes fail, the subscription link has likely expired and you need to get a new one.

How to Check If the Proxy Is Working

After connecting, open a browser and visit an IP-checking site (like ip.sb) to confirm the exit IP is now the proxy server's IP. If the displayed IP is still your local IP, the proxy isn't working — check whether the node is available and whether VpnService permission has been granted.

Check the Status Bar and Node Card

On the v2rayNG main screen, after a successful connection the node card shows "Connected" and a VPN icon appears in the status bar. If the node card shows "Connection failed", tap it to see the specific error. Common errors include "Connection timeout" and "Authentication failed", which help you determine whether the issue is with the node or the configuration.

FAQ

Some Apps Can't Access the Internet After Connecting

If per-app proxy is misconfigured, some apps may be incorrectly excluded from the proxy. Check the per-app proxy settings and make sure the target app is in the correct list.

Connection Drops Frequently

Check the battery optimization whitelist to make sure v2rayNG isn't being suspended by the system. You can also try switching nodes or adjusting routing rules.

VPN Icon Disappears from Status Bar

This means the connection has dropped. Tap "Connect" again and check whether v2rayNG is in the battery optimization whitelist.

Why Does It Disconnect in the Background

Android's battery saver suspends apps that run in the background for a long time. As a VPN service, v2rayNG loses its connection once suspended. Adding v2rayNG to the battery optimization whitelist is the most effective way to stop it from disconnecting.

Is VpnService Permission Safe?

Yes. VpnService simply creates a virtual network interface and doesn't read or modify your personal data. After granting permission, traffic is handled by the v2rayNG core.

What If Per-App Proxy and Routing Rules Conflict?

Per-app proxy takes precedence over routing rules. If an app is excluded by per-app proxy, it won't use the proxy even if routing rules say it should. It's best to use only one control method to avoid confusion.