From efb4919a1e3b5a6d23df36aeaf63191e6a747e77 Mon Sep 17 00:00:00 2001 From: Jens Date: Mon, 27 Jun 2022 23:02:53 +0200 Subject: [PATCH] regex where comparisons are made --- .../main/java/com/jens/automation2/Miscellaneous.java | 10 ++++++---- .../automation2/receivers/PhoneStatusListener.java | 10 +++------- .../activity_manage_action_close_notification.xml | 8 ++++++++ .../layout/activity_manage_trigger_notification.xml | 9 +++++++++ app/src/main/res/values-de/strings.xml | 1 + app/src/main/res/values-ru/strings.xml | 1 - app/src/main/res/values/strings.xml | 1 + 7 files changed, 28 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/com/jens/automation2/Miscellaneous.java b/app/src/main/java/com/jens/automation2/Miscellaneous.java index d32272d..5646211 100644 --- a/app/src/main/java/com/jens/automation2/Miscellaneous.java +++ b/app/src/main/java/com/jens/automation2/Miscellaneous.java @@ -476,7 +476,10 @@ public class Miscellaneous extends Service switch(direction) { case Trigger.directionEquals: - return haystack.equalsIgnoreCase(needle); + if(Miscellaneous.isRegularExpression(needle)) + return haystack.matches(needle); + else + return haystack.equalsIgnoreCase(needle); case Trigger.directionNotEquals: return !haystack.equalsIgnoreCase(needle); case Trigger.directionContains: @@ -1753,13 +1756,12 @@ public class Miscellaneous extends Service public static boolean comparePhoneNumbers(String number1, String number2) { - /* To be activated when Android S SDK comes out - if(Build.VERSION.SDK_INT > Build.VERSION_CODES.Q) + if(Build.VERSION.SDK_INT > Build.VERSION_CODES.S) { TelephonyManager tm = (TelephonyManager)Miscellaneous.getAnyContext().getSystemService(Context.TELEPHONY_SERVICE); return PhoneNumberUtils.areSamePhoneNumber(number1, number2, tm.getNetworkCountryIso()); } - else*/ + else return PhoneNumberUtils.compare(number1, number2); } diff --git a/app/src/main/java/com/jens/automation2/receivers/PhoneStatusListener.java b/app/src/main/java/com/jens/automation2/receivers/PhoneStatusListener.java index 22dc1e5..c1a9337 100644 --- a/app/src/main/java/com/jens/automation2/receivers/PhoneStatusListener.java +++ b/app/src/main/java/com/jens/automation2/receivers/PhoneStatusListener.java @@ -22,8 +22,6 @@ import java.util.ArrayList; public class PhoneStatusListener implements AutomationListenerInterface { -// protected static int currentStateIncoming = -1; -// protected static int currentStateOutgoing = -1; protected static String lastPhoneNumber=""; protected static int lastPhoneDirection = -1; //0=incoming, 1=outgoing protected static int currentState = -1; @@ -120,8 +118,6 @@ public class PhoneStatusListener implements AutomationListenerInterface } else { -// state != TelephonyManager.CALL_STATE_IDLE && - setCurrentState(state); setLastPhoneDirection(1); @@ -175,12 +171,12 @@ public class PhoneStatusListener implements AutomationListenerInterface Miscellaneous.logEvent("i", "Call state", String.format(Miscellaneous.getAnyContext().getResources().getString(R.string.outgoingCallTo), getLastPhoneNumber()), 4); ArrayList ruleCandidates = Rule.findRuleCandidates(Trigger_Enum.phoneCall); - for(int i=0; i + + diff --git a/app/src/main/res/layout/activity_manage_trigger_notification.xml b/app/src/main/res/layout/activity_manage_trigger_notification.xml index 01a5cd6..e4aae42 100644 --- a/app/src/main/res/layout/activity_manage_trigger_notification.xml +++ b/app/src/main/res/layout/activity_manage_trigger_notification.xml @@ -96,6 +96,7 @@ android:layout_margin="10dp" android:layout_marginVertical="@dimen/default_margin" android:background="#aa000000" /> + + + diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 08639b7..e2b1827 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -737,4 +737,5 @@ Während der Flugmodus aktiv ist, kann WLAN nur von Anwendungen ein- oder ausgeschaltet werden, wenn root-Rechte dafür verwendet werden. Anwendungen, die auf Android Q oder höher ausgerichtet sind, können WLAN nicht mehr ein- oder ausschalten. Daran ist Google schuld, nicht ich.\n\nSie können diese Einschränkung umgehen, indem Sie Ihr Gerät rooten und die Checkbox unten aktivieren. Alternativ laden Sie sich diese Anwendung von F-Droid oder meiner Webseite herunter. In diesen Versionen bin ich nicht gezwungen, die Anwendungen auf die neuesten API Level zu unterstützen. Sie können ein Script oder eine andere ausführbare Datei auswählen, die dann als Aktion ausgeführt wird.\n\nAllerdings gibt es ein paar Voraussetzungen, um die Sie sich selbst kümmern müssen. Google hat es sehr schwer gemacht, irgendetwas außer normalen Android Anwendungen auszuführen.\n\n1.\nDie Datei muß im Dateisystem als ausführbar markiert sein. Auf einem normalen Android-System (ohne Root) ist das in der Tat der schwierigste Teil.\n\n2.\nDas bedeutet auch, daß auch Automation in der Lage sein muß, die Datei auszuführen, nicht nur der Besitzer oder die Gruppe.\n\n3.\nWenn es ein Script ist, muß eine gültige Shell im Header des Scripts definiert sein. + Falls \"ist gleich\" ausgewählt ist, können Sie reguläre Ausdrücke eingeben. \ No newline at end of file diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 19b7ec4..2f29b2c 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -671,7 +671,6 @@ от к совпадает - https://regex101.com/ Загрузить список Wi-Fi Список Wi-Fi, к которому было подключено ваше устройство. Можно использовать для определения того, в каких местах вы были. Вот почему для загрузки списка Wi-Fi требуется разрешение на доступ к местоположению. Если вы хотите выбрать один из из списка, вам необходимо предоставить это разрешение. Если вы этого не хотите, вы все равно можете ввести свое имя Wi-Fi вручную. На вашем устройстве нет известных Wi-Fi. diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index c94df43..156a874 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -834,4 +834,5 @@ tethering is active tethering is not active Tethering state + If \"equals\" is selected, you may enter a regular expression. \ No newline at end of file