Roaming Guard
Protects you from accidental roaming on your mobile data connection
Markus Petermann System
Screenshots
Description
Roaming Guard protects you from accidental roaming connections by monitoring your mobile network operator. The app compares your current operator against a customizable MCC/MNC allowlist or denylist. When your phone connects to an unwanted operator, you can choose to either receive a warning notification or — with some limitations — automatically block data traffic. Roaming Guard includes a predefined EU/EEA allowlist, and you can easily create your own custom list that perfectly matches your mobile plan.
Regular Android apps cannot completely block data traffic or even disable data roaming. Therefore, this app implements a local, on-device VPN service that drops all traffic routed through the VPN when enabled. However, this approach has the following technical limitations:
- Android only supports one active VPN at a time, meaning conflicts may arise if you use another VPN app.
- Tethering and mobile hotspot traffic is not routed through the VPN by Android and therefore cannot be blocked.
- System apps that can explicitly select their network connection may bypass the VPN.
- DNS and NTP traffic have been reported to leak outside the VPN.
- There might be short time windows after boot, or when enabling the VPN, where traffic might not be filtered.
What’s new (1.1.1)
- Update MCC/MNC data.
Versions
Permissions
What the app asks the system for. Android only grants sensitive access after you confirm it.
- Foreground serviceKeep running in the background, visible in the status bar.
- FOREGROUND_SERVICE_SPECIAL_USE
- NotificationsShow notifications.
- Run at startupStart automatically after the device is switched on.
- Network stateCheck whether and how the device is connected.
- REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
- roamingguard.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Comments