From: Tobias Brunner Date: Tue, 1 Dec 2020 14:54:35 +0000 (+0100) Subject: android: Don't default to marking VPN connections as metered X-Git-Tag: 5.9.2dr1~21 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b32a9be41971a953297571c05882d9f9852f37b7;p=thirdparty%2Fstrongswan.git android: Don't default to marking VPN connections as metered For apps targeting Android 10, where a method to change this was added, the default changed so that all VPN connections are marked as metered. This means certain background operations (e.g. syncing data) are not performed anymore even when connected to a WiFi. By setting this to false, the metered state of the VPN connection reflects that of the underlying networks. --- diff --git a/src/frontends/android/app/src/main/java/org/strongswan/android/logic/CharonVpnService.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/CharonVpnService.java index da6ea63741..5a37955d3f 100644 --- a/src/frontends/android/app/src/main/java/org/strongswan/android/logic/CharonVpnService.java +++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/CharonVpnService.java @@ -822,6 +822,12 @@ public class CharonVpnService extends VpnService implements Runnable, VpnStateSe PendingIntent pending = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); builder.setConfigureIntent(pending); + + /* mark all VPN connections as unmetered (default changed for Android 10) */ + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) + { + builder.setMetered(false); + } return builder; }