diff --git a/app/src/main/java/com/jens/automation2/ActivityManageRule.java b/app/src/main/java/com/jens/automation2/ActivityManageRule.java index 2d35f52..22081bb 100644 --- a/app/src/main/java/com/jens/automation2/ActivityManageRule.java +++ b/app/src/main/java/com/jens/automation2/ActivityManageRule.java @@ -1445,9 +1445,10 @@ public class ActivityManageRule extends Activity else if(Action.getActionTypesAsArray()[which].toString().equals(Action_Enum.setUsbTethering.toString())) { newAction.setAction(Action_Enum.setUsbTethering); + getActionParameter1Dialog(ActivityManageRule.this).show(); + if(Build.VERSION.SDK_INT > Build.VERSION_CODES.GINGERBREAD_MR1) Miscellaneous.messageBox(context.getResources().getString(R.string.warning), context.getResources().getString(R.string.usbTetheringFailForAboveGingerbread), context).show(); - getActionParameter1Dialog(ActivityManageRule.this).show(); } else if(Action.getActionTypesAsArray()[which].toString().equals(Action_Enum.setWifiTethering.toString())) { diff --git a/app/src/main/java/com/jens/automation2/ActivityPermissions.java b/app/src/main/java/com/jens/automation2/ActivityPermissions.java index e17cf1d..4420ab2 100644 --- a/app/src/main/java/com/jens/automation2/ActivityPermissions.java +++ b/app/src/main/java/com/jens/automation2/ActivityPermissions.java @@ -499,7 +499,8 @@ public class ActivityPermissions extends Activity case setAirplaneMode: addToArrayListUnique(Manifest.permission.WRITE_SETTINGS, requiredPermissions); addToArrayListUnique(Manifest.permission.ACCESS_NETWORK_STATE, requiredPermissions); - addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); +// https://stackoverflow.com/questions/32185628/connectivitymanager-requestnetwork-in-android-6-0 +// addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); /* Permission was not required anymore, even before Android 6: https://su.chainfire.eu/#updates-permission addToArrayListUnique(permissionNameSuperuser, requiredPermissions);*/ break; @@ -512,7 +513,8 @@ public class ActivityPermissions extends Activity case setDataConnection: addToArrayListUnique(Manifest.permission.WRITE_SETTINGS, requiredPermissions); addToArrayListUnique(Manifest.permission.ACCESS_NETWORK_STATE, requiredPermissions); - addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); +// https://stackoverflow.com/questions/32185628/connectivitymanager-requestnetwork-in-android-6-0 +// addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); addToArrayListUnique(Manifest.permission.READ_PHONE_STATE, requiredPermissions); /* Permission was not required anymore, even before Android 6: https://su.chainfire.eu/#updates-permission addToArrayListUnique(permissionNameSuperuser, requiredPermissions);*/ @@ -522,16 +524,19 @@ public class ActivityPermissions extends Activity break; case setUsbTethering: addToArrayListUnique(Manifest.permission.WRITE_SETTINGS, requiredPermissions); - addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); +// https://stackoverflow.com/questions/32185628/connectivitymanager-requestnetwork-in-android-6-0 +// addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); break; case setWifi: addToArrayListUnique(Manifest.permission.WRITE_SETTINGS, requiredPermissions); - addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); +// https://stackoverflow.com/questions/32185628/connectivitymanager-requestnetwork-in-android-6-0 +// addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); addToArrayListUnique(Manifest.permission.ACCESS_NETWORK_STATE, requiredPermissions); break; case setWifiTethering: addToArrayListUnique(Manifest.permission.WRITE_SETTINGS, requiredPermissions); - addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); +// https://stackoverflow.com/questions/32185628/connectivitymanager-requestnetwork-in-android-6-0 +// addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); addToArrayListUnique(Manifest.permission.ACCESS_NETWORK_STATE, requiredPermissions); /* @@ -578,30 +583,30 @@ public class ActivityPermissions extends Activity break; case turnUsbTetheringOff: addToArrayListUnique(Manifest.permission.WRITE_SETTINGS, requiredPermissions); - addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); +// addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); break; case turnUsbTetheringOn: addToArrayListUnique(Manifest.permission.WRITE_SETTINGS, requiredPermissions); - addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); +// addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); break; case turnWifiOff: addToArrayListUnique(Manifest.permission.WRITE_SETTINGS, requiredPermissions); - addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); +// addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); addToArrayListUnique(Manifest.permission.ACCESS_NETWORK_STATE, requiredPermissions); break; case turnWifiOn: addToArrayListUnique(Manifest.permission.WRITE_SETTINGS, requiredPermissions); - addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); +// addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); addToArrayListUnique(Manifest.permission.ACCESS_NETWORK_STATE, requiredPermissions); break; case turnWifiTetheringOff: addToArrayListUnique(Manifest.permission.WRITE_SETTINGS, requiredPermissions); - addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); +// addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); addToArrayListUnique(Manifest.permission.ACCESS_NETWORK_STATE, requiredPermissions); break; case turnWifiTetheringOn: addToArrayListUnique(Manifest.permission.WRITE_SETTINGS, requiredPermissions); - addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); +// addToArrayListUnique(Manifest.permission.CHANGE_NETWORK_STATE, requiredPermissions); addToArrayListUnique(Manifest.permission.ACCESS_NETWORK_STATE, requiredPermissions); break; case waitBeforeNextAction: diff --git a/app/src/main/java/com/jens/automation2/Miscellaneous.java b/app/src/main/java/com/jens/automation2/Miscellaneous.java index 9da6289..7c1519b 100644 --- a/app/src/main/java/com/jens/automation2/Miscellaneous.java +++ b/app/src/main/java/com/jens/automation2/Miscellaneous.java @@ -15,6 +15,8 @@ import android.content.Intent; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.database.Cursor; +import android.net.ConnectivityManager; +import android.net.NetworkInfo; import android.net.Uri; import android.os.AsyncTask; import android.os.Build; @@ -670,6 +672,24 @@ public class Miscellaneous extends Service return alertDialog.create(); } + + private boolean haveNetworkConnection() + { + boolean haveConnectedWifi = false; + boolean haveConnectedMobile = false; + + ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); + NetworkInfo[] netInfo = cm.getAllNetworkInfo(); + for (NetworkInfo ni : netInfo) { + if (ni.getTypeName().equalsIgnoreCase("WIFI")) + if (ni.isConnected()) + haveConnectedWifi = true; + if (ni.getTypeName().equalsIgnoreCase("MOBILE")) + if (ni.isConnected()) + haveConnectedMobile = true; + } + return haveConnectedWifi || haveConnectedMobile; + } /** * Checks if the device is rooted. @@ -678,9 +698,13 @@ public class Miscellaneous extends Service */ public static boolean isPhoneRooted() { + if(true) + return true; + // get from build info String buildTags = Build.TAGS; - if (buildTags != null && buildTags.contains("test-keys")) { + if (buildTags != null && buildTags.contains("test-keys")) + { return true; } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index a2732ef..2601b83 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -507,7 +507,7 @@ Phone is not rooted. Data connection was successfully changed using superuser permissions. Data could not be changed using superuser permissions. - You need to root your phone for this function to work. Afterwards you needs to \"run the rule manually\" to show up the superuser permission question. When the superuser popups shows up you need to always allow the application to do that. Otherwise the rule cannot function when the phone is unattended. + You need to root your phone for this function to work. Afterwards you need to \"run the rule manually\" to show up the superuser permission question. When the superuser popups shows up you need to always allow the application to do that. Otherwise the rule cannot function when the phone is unattended. Error writing config. Do you have a writable memory? I could not insert the last phone nr in the variable. I don\'t have it. Username