ScreenStateReceiver

This commit is contained in:
2022-01-21 20:57:42 +01:00
parent 5ed6097ed6
commit 83ee19b4fa
5 changed files with 195 additions and 292 deletions

View File

@@ -22,6 +22,8 @@ import com.jens.automation2.receivers.NoiseListener;
import com.jens.automation2.receivers.NotificationListener;
import com.jens.automation2.receivers.PhoneStatusListener;
import com.jens.automation2.receivers.ProcessListener;
import com.jens.automation2.receivers.ScreenStateReceiver;
import static com.jens.automation2.receivers.NotificationListener.EXTRA_TEXT;
import static com.jens.automation2.receivers.NotificationListener.EXTRA_TITLE;
@@ -123,6 +125,10 @@ public class Trigger
if(!checkProfileActive())
result = false;
break;
case screenState:
if(!checkScreenState())
result = false;
break;
default:
break;
}
@@ -308,6 +314,23 @@ public class Trigger
return false;
}
boolean checkScreenState()
{
try
{
int desiredState = Integer.parseInt(getTriggerParameter2());
int currentState = ScreenStateReceiver.getScreenState();
return desiredState == currentState;
}
catch (Exception e)
{
Miscellaneous.logEvent("w", "Trigger", "Error checking profile trigger.", 4);
}
return false;
}
boolean checkDeviceOrientation()
{
String deviceOrientationPieces[] = getTriggerParameter2().split(Trigger.triggerParameter2Split);
@@ -1492,6 +1515,12 @@ public class Trigger
else
returnString.append(String.format(Miscellaneous.getAnyContext().getString(R.string.profileNotActive), getTriggerParameter2().split(Trigger.triggerParameter2Split)[0]));
break;
case screenState:
if(triggerParameter)
returnString.append(String.format(Miscellaneous.getAnyContext().getString(R.string.screenIs), getTriggerParameter2().split(Trigger.triggerParameter2Split)[0]));
else
returnString.append(String.format(Miscellaneous.getAnyContext().getString(R.string.profileNotActive), getTriggerParameter2().split(Trigger.triggerParameter2Split)[0]));
break;
default:
returnString.append("error");
break;