First distinguish continuous data transfer, repeated connection attempts, and a service stopped after the screen locks. Then decide whether to loosen battery restrictions. This guide is for Android users who notice higher battery use after connecting, lose the connection with the screen off, or find it works again only after reopening the app. Compare battery use under consistent conditions, adjust background access in system settings, and verify stability with a screen-off test. You don’t need to enable every keep-alive option at once.
First distinguish battery drain from background disconnects
v2rayNG is an Android GUI client that uses the Xray core to handle proxy connections. When started, it creates a local traffic entry point through Android’s VPN service, then routes traffic directly or through a proxy according to your configuration. The VPN icon in the status bar only indicates an active VPN connection. It does not show whether the server is reachable, traffic is heavy, or battery use is abnormal.
Open Settings → Battery → Battery usage and check app battery use and background activity over the same period. Some systems attribute power used for VPN traffic forwarding to the VPN app, so v2rayNG appearing near the top does not mean it generated all the traffic by itself. Check video playback, file downloads, and cloud backups from that day before changing any settings.
- Phone gets warm while downloading with the screen on: Pause the download and check again. The display, wireless connection, and data encryption all use power, so don’t judge by the proxy app’s ranking alone.
- Battery drops noticeably with the screen off: Check background sync and repeated connection errors in the logs, and confirm the signal isn’t consistently weak.
- Web pages stop loading after the screen locks: First check whether the VPN service is still running, then investigate the server and network. This is usually a reliability issue, not necessarily battery drain.
- Everything works again as soon as you reopen the app: Check background activity restrictions first. If the service is still running, investigate network access during sleep, server reconnections, and DNS.
Track battery use under consistent conditions
Run a short comparison before deciding what to change. The figures below are suggested test parameters, not measured battery life for a particular phone or a guaranteed percentage saving. Battery indicators are rounded, so a one-point difference in a single test proves little. When possible, run longer tests and repeat them.
- Record a baseline: When you don’t need a proxy, stop v2rayNG. Keep the same Wi-Fi connection, lock the screen for 30 minutes, and note the starting and ending battery levels and whether the phone feels warm.
- Record the connected state: Start v2rayNG and use the same server. Repeat the test with a similar starting battery level and the same sync tasks. Don’t update subscriptions, run speed tests, or download files during this round.
- Record the result of a change: Change just one background restriction or per-app setting, then repeat the test and note whether the connection dropped while the screen was off.
Unplug the charger for all three rounds, and keep the room temperature and network signal as similar as possible. Don’t compare a run on weak mobile signal while moving with one on stable Wi-Fi. Keep at least these six details in your test log: network, server, background settings, starting and ending battery levels, and whether the connection dropped. This makes it easier to revert changes.
Bottom line: If the connection stays up, check traffic first
If the service stays online but the connected test uses more battery than the baseline, pause background sync and check the logs for repeated retries. Prioritize battery restrictions only if the service actually stops after the screen locks.
Set battery optimization exemptions based on symptoms
Start from the app info page rather than disabling system-wide battery saving. A common route is to long-press the v2rayNG icon → App info → Battery or App battery management. Menu names vary by Android version. If you can’t find the option, search Settings for “battery optimization” or “background activity,” then select v2rayNG.
-
Note the original settings
Open App info → Battery and note whether the current setting is Optimized, Restricted, or Unrestricted. If there’s also an Allow background activity option, record its state too so you can restore it after testing.
-
Remove the restriction first
If the app is set to Restricted, change it to Optimized and test again. If the connection is stable, there’s no need to grant more access. If the system still stops it with the screen off, consider Unrestricted.
-
Relax restrictions only as needed
If you need a persistent connection, choose Unrestricted on the app’s battery page, or go to Battery optimization → All apps → v2rayNG and select Don’t optimize. Most systems offer one of these routes, not both.
-
Run a screen-off test
Return to v2rayNG and start the connection, then lock the screen for 30 minutes. After unlocking, check the VPN status, notification, and internet access before opening the app and reviewing its logs. This helps avoid mistaking an automatic recovery on app launch for an uninterrupted connection.
-
Keep changes to a minimum
If relaxing restrictions doesn’t help, restore the original settings and check the server and network instead. Don’t enable autostart, lock the app in recents, and grant every background permission at once; you won’t know which change helped.
Don’t disable all battery management just to keep the app alive. Battery Saver and Extreme Battery Saver may further restrict network access and background activity, so track them as separate test conditions. Android’s sleep behavior isn’t controlled by a single exemption switch, and Unrestricted doesn’t guarantee uninterrupted service on every network.
Find background settings by Android version
Differences between devices mostly come down to system background policies, not whether you use VMess or VLESS. The table lists common settings paths and search terms. Menus may move after a system update, so follow what you see on your device. Adjust app-level restrictions first; consider the manufacturer’s extra launch controls only if needed.
| System | Common settings path | What to check |
|---|---|---|
| Pixel and near-stock Android | Settings → Apps → v2rayNG → App battery usage | Check Allow background usage and the optimization setting. Some versions require opening the option to select a setting. |
| Xiaomi HyperOS / MIUI | App info → Battery saver; search for “Background autostart” | If the app stops when the screen locks, test No restrictions. Evaluate autostart separately if you need the app to launch automatically. |
| Samsung One UI | Settings → Battery → Background usage limits | Make sure the app isn’t in Sleeping apps. If needed, also check restrictions on the app’s battery page. |
| OPPO / OnePlus / realme | App info → Battery usage or Battery management | Check Allow background activity. Test autostart and associated startup separately, only if needed. |
| vivo / iQOO | Settings → Battery → Background power consumption management | Check the background policy for the app. A lock icon in the recent apps list isn’t enough on its own. |
Locking an app in the recent apps list usually keeps it from being removed by a one-tap cleanup. It doesn’t add the app to the battery optimization exemption list or guarantee that the VPN service will stay alive indefinitely. Autostart mainly affects specific launch scenarios; it doesn’t explain every drop in an already active connection.
Choose a background and persistent notification strategy
VPN service notifications serve a different purpose from regular message notifications: they show the status of a background service. A static notification is rarely the main source of battery drain; continuous data transfer, frequent reconnections, and weak signal are more important to check first. On Android 13 and later, notification permission is separate from VPN authorization. Hiding a notification doesn’t stop the service.
Relax background restrictions only if needed
RecommendedKeep the service status notification visible. Start with the system’s default optimization, and relax restrictions one at a time only after confirming the connection drops with the screen off. This balances reliability with visibility.
Best for: Everyday use when you want a stable connection and a way to track battery use.
Stop it manually when you’re done
When finished, stop the connection from the v2rayNG main screen and confirm the VPN icon disappears. Start it again next time rather than relying on it to stay active in the background.
Best for: Accessing specific apps at set times without needing a continuous connection.
Prioritize a persistent connection
Set the app to Unrestricted if tests show it’s necessary, and check the manufacturer’s background policy. If you enable Android’s Always-on VPN, make sure you understand what happens to traffic when the VPN disconnects.
Best for: Users who need a long-running connection and accept the associated background battery use.
To reduce notification noise, long-press the service notification → Notification settings, then silence the relevant notification category. Don’t force-stop the app. Available categories and controls depend on the Android and client versions; keep a way to check the connection status.
Reduce unnecessary traffic and repeated reconnections
Background permissions determine whether the service can keep running; routing rules and app selection determine which traffic enters the processing chain. Don’t confuse the two. With v2rayNG, traffic matched by direct rules in the Xray core may still pass through the local VPN for inspection and rule evaluation. “Direct” doesn’t mean that traffic completely bypasses the client.
- Limit which apps use the VPN: Open the v2rayNG side menu → Settings → Per-app proxy. If your version supports proxying selected apps only, select just the apps that need it. Read the on-screen description carefully so you don’t mistake “bypass selected apps” for “proxy selected apps only.”
- Check background tasks: Pause photo backups, offline downloads, and large file syncs before testing again. An app being covered by the VPN doesn’t mean it only transfers content you can see on screen.
- Stick to one server: Test a stable server on the same network instead of running repeated batch speed tests. VMess and VLESS are protocol names; neither alone tells you which will use less battery.
- Look for repeated errors: If the logs keep showing
timeout,connection refused, or handshake errors, check server reachability, device time, and DNS settings first. Don’t try to mask connection failures by allowing the app to run longer in the background. - Turn off verbose logging: After troubleshooting, set the log level in Settings back to a level suitable for everyday use, such as
warningif available. Don’t leavedebugenabled long-term, and don’t treat a lower log level as a fix for network problems.
Switching between Wi-Fi and mobile data can force existing connections to reconnect, and weak signal also makes wireless communication use more power. If the issue occurs only during your commute, test again in one place on stable Wi-Fi. Change DNS, routing rules, or servers one at a time to keep the results reproducible.
Bottom line: Keep settings that address the actual problem
If the service stops, check background restrictions. If it stays online but connections fail, check the network and server. If the connection works but drains the battery, check traffic volume. After testing, keep only the settings that actually fix the issue.
Final checks after changing settings
After making changes, test at least one screen-off session, one network switch, and one manual stop. Don’t count it as a success just because a page loads after you open the app; opening it may restart the service. Before sharing logs for troubleshooting, remove sensitive details such as subscription links, server addresses, and user identifiers.
- Screen-off test: Keep the same server connected with the screen locked for 30 minutes. After unlocking, confirm the connection status and actual access, then check the logs for repeated reconnections.
- Network-switch test: Switch from Wi-Fi to mobile data, wait for the connection to recover, and open the same test page. If something goes wrong, note when you switched so you can compare it with the logs.
- Stop test: Stop the connection from the main screen, confirm the VPN icon disappears, and check whether a block-without-VPN setting prevents internet access.
- Recheck battery use: Repeat the original test under the same conditions. Don’t judge success by a one-time app battery ranking or a very small percentage difference.
- Save the results: Record the phone model, Android version, v2rayNG version, and final background settings. Find the version number in system app info rather than writing only “latest.”
The goal isn’t to grant as many background permissions as possible. Keep essential connections available, stop pointless retries, and let the service shut down when it’s idle. If the connection is stable and battery use is normal, keep your current settings; there’s no need to change system policies just to keep the app alive.