diff --git a/app/src/main/java/com/jens/automation2/ActivityPermissions.java b/app/src/main/java/com/jens/automation2/ActivityPermissions.java index 51b24fd..2fc13cc 100644 --- a/app/src/main/java/com/jens/automation2/ActivityPermissions.java +++ b/app/src/main/java/com/jens/automation2/ActivityPermissions.java @@ -734,16 +734,14 @@ public class ActivityPermissions extends Activity action.getParameter2().contains(Actions.wireguard_tunnel_refresh) ) addToArrayListUnique(ActivityPermissions.permissionNameWireguard, requiredPermissions); -// if( -// action.getParameter2().contains("eu.faircode.netguard.START_PORT_FORWARD") -// || -// action.getParameter2().contains("eu.faircode.netguard.STOP_PORT_FORWARD") -// ) -// addToArrayListUnique("net.kollnig.missioncontrol.permission.ADMIN", requiredPermissions); - if(Build.VERSION.SDK_INT >= 34) + + if(Miscellaneous.getTargetSDK(Miscellaneous.getAnyContext()) >= 34) { if(action.getParameter2().contains(Actions.alarm_set)) + { addToArrayListUnique(Manifest.permission.SET_ALARM, requiredPermissions); + addToArrayListUnique(Manifest.permission.USE_FULL_SCREEN_INTENT, requiredPermissions); + } } if(Build.VERSION.SDK_INT >= 29) { @@ -1108,7 +1106,24 @@ public class ActivityPermissions extends Activity // usingElements.add(String.format(getResources().getString(R.string.ruleXrequiresThis), ruleName)); // break; case Manifest.permission.SET_ALARM: - if(Build.VERSION.SDK_INT >= 34) + if(Miscellaneous.getTargetSDK(Miscellaneous.getAnyContext()) >= 34) + { + outerLoop: + for (Rule rule : getRulesUsing(Action.Action_Enum.startOtherActivity)) + { + for(Action action : rule.getActionSet()) + { + if(action.getParameter2().contains(Actions.alarm_set)) + { + usingElements.add(String.format(getResources().getString(R.string.ruleXrequiresThis), rule.getName())); + continue outerLoop; + } + } + } + } + break; + case Manifest.permission.USE_FULL_SCREEN_INTENT: + if(Miscellaneous.getTargetSDK(Miscellaneous.getAnyContext()) >= 34) { outerLoop: for (Rule rule : getRulesUsing(Action.Action_Enum.startOtherActivity))