summaryrefslogtreecommitdiff
path: root/bitmask_android/src/androidTest/java/se/leap/bitmaskclient/test/ConnectionManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'bitmask_android/src/androidTest/java/se/leap/bitmaskclient/test/ConnectionManager.java')
-rw-r--r--bitmask_android/src/androidTest/java/se/leap/bitmaskclient/test/ConnectionManager.java33
1 files changed, 33 insertions, 0 deletions
diff --git a/bitmask_android/src/androidTest/java/se/leap/bitmaskclient/test/ConnectionManager.java b/bitmask_android/src/androidTest/java/se/leap/bitmaskclient/test/ConnectionManager.java
new file mode 100644
index 00000000..f1cbff19
--- /dev/null
+++ b/bitmask_android/src/androidTest/java/se/leap/bitmaskclient/test/ConnectionManager.java
@@ -0,0 +1,33 @@
+package se.leap.bitmaskclient.test;
+
+import android.content.Context;
+import android.net.ConnectivityManager;
+import android.net.wifi.WifiManager;
+import android.util.Log;
+import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+
+public class ConnectionManager {
+ static void setMobileDataEnabled(boolean enabled, Context context) {
+ final ConnectivityManager conman = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
+ Method[] methods = conman.getClass().getMethods();
+ for (Method method : methods) {
+ if (method.getName().equals("setMobileDataEnabled")) {
+ method.setAccessible(true);
+ try {
+ method.invoke(conman, enabled);
+ } catch (InvocationTargetException e) {
+ e.printStackTrace();
+ } catch (IllegalAccessException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ static void setWifiEnabled(boolean enabled, Context context) {
+ WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
+ wifiManager.setWifiEnabled(enabled);
+ }
+}