forked from jens/Automation
Merge remote-tracking branch 'origin/development' into development
This commit is contained in:
commit
e2027a457a
@ -8,7 +8,7 @@ android {
|
|||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "com.jens.automation2"
|
applicationId "com.jens.automation2"
|
||||||
minSdkVersion 16
|
minSdkVersion 16
|
||||||
compileSdkVersion 31
|
compileSdkVersion 33
|
||||||
buildToolsVersion '29.0.2'
|
buildToolsVersion '29.0.2'
|
||||||
useLibrary 'org.apache.http.legacy'
|
useLibrary 'org.apache.http.legacy'
|
||||||
versionCode 138
|
versionCode 138
|
||||||
|
@ -71,6 +71,7 @@
|
|||||||
android:name="android.permission.WRITE_SECURE_SETTINGS"
|
android:name="android.permission.WRITE_SECURE_SETTINGS"
|
||||||
tools:ignore="ProtectedPermissions" />
|
tools:ignore="ProtectedPermissions" />
|
||||||
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM"/>
|
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM"/>
|
||||||
|
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
|
||||||
<!--android:maxSdkVersion="32" />
|
<!--android:maxSdkVersion="32" />
|
||||||
<uses-permission android:name="android.permission.USE_EXACT_ALARM" />-->
|
<uses-permission android:name="android.permission.USE_EXACT_ALARM" />-->
|
||||||
|
|
||||||
@ -107,7 +108,9 @@
|
|||||||
android:exported="false"
|
android:exported="false"
|
||||||
android:label="@string/app_name" />
|
android:label="@string/app_name" />
|
||||||
|
|
||||||
<receiver android:name=".receivers.StartupIntentReceiver" android:enabled="true" android:exported="true">
|
<receiver android:name=".receivers.StartupIntentReceiver"
|
||||||
|
android:enabled="true"
|
||||||
|
android:exported="true">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<!--<action android:name="android.intent.action.SCREEN_ON" />-->
|
<!--<action android:name="android.intent.action.SCREEN_ON" />-->
|
||||||
<!--<action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />-->
|
<!--<action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />-->
|
||||||
@ -214,7 +217,6 @@
|
|||||||
<activity android:name=".ActivityManageActionStartActivity" />
|
<activity android:name=".ActivityManageActionStartActivity" />
|
||||||
<activity android:name=".ActivityManageTriggerNfc" />
|
<activity android:name=".ActivityManageTriggerNfc" />
|
||||||
<activity android:name=".ActivityManageActionSpeakText" />
|
<activity android:name=".ActivityManageActionSpeakText" />
|
||||||
<activity android:name=".ActivityManageActionPlaySound" />
|
|
||||||
<activity android:name=".ActivityManageTriggerBluetooth" />
|
<activity android:name=".ActivityManageTriggerBluetooth" />
|
||||||
<activity android:name=".ActivityMainProfiles" />
|
<activity android:name=".ActivityMainProfiles" />
|
||||||
<activity android:name=".ActivityManageProfile" />
|
<activity android:name=".ActivityManageProfile" />
|
||||||
@ -235,8 +237,6 @@
|
|||||||
|
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<activity android:name=".ActivityPermissions" />
|
|
||||||
|
|
||||||
<!-- https://developer.android.com/about/versions/pie/android-9.0-changes-28#apache-p-->
|
<!-- https://developer.android.com/about/versions/pie/android-9.0-changes-28#apache-p-->
|
||||||
<uses-library android:name="org.apache.http.legacy" android:required="false"/>
|
<uses-library android:name="org.apache.http.legacy" android:required="false"/>
|
||||||
|
|
||||||
@ -259,7 +259,8 @@
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
<service android:name=".MyAccessibilityService"
|
<service android:name=".MyAccessibilityService"
|
||||||
android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE">
|
android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE"
|
||||||
|
android:exported="true">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.accessibilityservice.AccessibilityService" />
|
<action android:name="android.accessibilityservice.AccessibilityService" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
|
@ -427,6 +427,12 @@ public class ActivityPermissions extends Activity
|
|||||||
if(!havePermission(Manifest.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS, workingContext))
|
if(!havePermission(Manifest.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS, workingContext))
|
||||||
addToArrayListUnique(Manifest.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS, requiredPermissions);
|
addToArrayListUnique(Manifest.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS, requiredPermissions);
|
||||||
|
|
||||||
|
if(Build.VERSION.SDK_INT >= 33 && BuildConfig.FLAVOR.equals(AutomationService.flavor_name_googleplay))
|
||||||
|
{
|
||||||
|
if (!havePermission(android.Manifest.permission.POST_NOTIFICATIONS, workingContext))
|
||||||
|
addToArrayListUnique(android.Manifest.permission.POST_NOTIFICATIONS, requiredPermissions);
|
||||||
|
}
|
||||||
|
|
||||||
if(!havePermission(Manifest.permission.READ_EXTERNAL_STORAGE, workingContext))
|
if(!havePermission(Manifest.permission.READ_EXTERNAL_STORAGE, workingContext))
|
||||||
{
|
{
|
||||||
for (Profile p : Profile.getProfileCollection())
|
for (Profile p : Profile.getProfileCollection())
|
||||||
|
@ -265,7 +265,6 @@ public class NotificationListener extends NotificationListenerService// implemen
|
|||||||
cancelNotification(sbn.getPackageName(), sbn.getTag(), sbn.getId());
|
cancelNotification(sbn.getPackageName(), sbn.getTag(), sbn.getId());
|
||||||
else
|
else
|
||||||
cancelNotification(sbn.getKey());
|
cancelNotification(sbn.getKey());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequiresApi(api = Build.VERSION_CODES.KITKAT)
|
@RequiresApi(api = Build.VERSION_CODES.KITKAT)
|
||||||
@ -298,46 +297,4 @@ public class NotificationListener extends NotificationListenerService// implemen
|
|||||||
if(!buttonFound)
|
if(!buttonFound)
|
||||||
Miscellaneous.logEvent("w", "clickNotificationButton()", "Button with text \n" + buttonText + "\n could not found.", 2);
|
Miscellaneous.logEvent("w", "clickNotificationButton()", "Button with text \n" + buttonText + "\n could not found.", 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequiresApi(api = Build.VERSION_CODES.KITKAT)
|
|
||||||
public static boolean mayRuleStillBeActivatedForPendingNotifications(Rule rule)
|
|
||||||
{
|
|
||||||
for(RuleNotificationPair pair : notificationUsed)
|
|
||||||
Miscellaneous.logEvent("i", "mayRuleStillBeActivatedForPendingCalendarEvents()", "Existing pair of " + pair.rule.getName() + " and " + pair.notification, 5);
|
|
||||||
|
|
||||||
for(StatusBarNotification sbn : NotificationListener.getInstance().getActiveNotifications())
|
|
||||||
{
|
|
||||||
for(Trigger t : rule.getTriggerSet())
|
|
||||||
{
|
|
||||||
if(t.getTriggerType().equals(Trigger.Trigger_Enum.notification) && NotificationListener.getInstance().checkNotification(true, sbn))
|
|
||||||
{
|
|
||||||
if (!hasNotificationBeenUsedInRule(rule, convertNotificationToSimpleNotification(true, sbn)))
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
If there are multiple parallel calendar events and a rule has multiple
|
|
||||||
triggers of type calendar event, we don't want the rule to fire only once.
|
|
||||||
*/
|
|
||||||
if(rule.getAmountOfTriggersForType(Trigger.Trigger_Enum.notification) == 1)
|
|
||||||
{
|
|
||||||
Miscellaneous.logEvent("i", "mayRuleStillBeActivatedForPendingNotifications()", "Rule " + rule.getName() + " has not been used in conjunction with notification " + sbn, 4);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static boolean hasNotificationBeenUsedInRule(Rule rule, SimpleNotification notification)
|
|
||||||
{
|
|
||||||
for (RuleNotificationPair executedPair : notificationUsed)
|
|
||||||
{
|
|
||||||
if (executedPair.rule.equals(rule) && executedPair.notification.equals(notification))
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -15,21 +15,21 @@ Mögliche Auslöser:
|
|||||||
* Flugzeugmodus
|
* Flugzeugmodus
|
||||||
* Roaming aktiv oder nicht
|
* Roaming aktiv oder nicht
|
||||||
* NFC tags
|
* NFC tags
|
||||||
************** Aktivitätserkennung (nicht in F-Droid Version)
|
* Aktivitätserkennung (nicht in F-Droid Version)
|
||||||
* Bluetooth Gerät verbunden
|
* Bluetooth Gerät verbunden
|
||||||
* Headset verbunden
|
* Headset verbunden
|
||||||
* Benachrichtigungen anderer Anwendungen
|
* Benachrichtigungen anderer Anwendungen
|
||||||
* Geräteausrichtung (Gyroskop)
|
* Geräteausrichtung (Gyroskop)
|
||||||
* Profile aktiv oder nicht
|
* Profile aktiv oder nicht
|
||||||
************ Bildschirmzustand (aus-/eingeschaltet)
|
* Bildschirmzustand (aus-/eingeschaltet)
|
||||||
************ Musikwiedergabestatus
|
* Musikwiedergabestatus
|
||||||
************ Gerät startet
|
* Gerät startet
|
||||||
************ Dienst startet
|
* Dienst startet
|
||||||
* Broadcasts anderer Anwendungen
|
* Broadcasts anderer Anwendungen
|
||||||
************ Router-Zustand
|
* Router-Zustand
|
||||||
************ Zustände (Bluetooth/WLAN aus oder an)
|
* Zustände (Bluetooth/WLAN aus oder an)
|
||||||
* Variablen, die gesetzt wurden
|
* Variablen, die gesetzt wurden
|
||||||
*********** Kalendertermine
|
* Kalendertermine
|
||||||
* Telefongespräch im Gange
|
* Telefongespräch im Gange
|
||||||
|
|
||||||
Mögliche Aktionen:
|
Mögliche Aktionen:
|
||||||
@ -48,21 +48,21 @@ Mögliche Aktionen:
|
|||||||
* Mobile Daten ein-/ausschalten
|
* Mobile Daten ein-/ausschalten
|
||||||
* Text sprechen (TTS)
|
* Text sprechen (TTS)
|
||||||
* Musikplayer öffnen
|
* Musikplayer öffnen
|
||||||
********** Medienwiedergabe steuern
|
* Medienwiedergabe steuern
|
||||||
* Bildschirmhelligkeit ändern
|
* Bildschirmhelligkeit ändern
|
||||||
* Sounddatei abspielen
|
* Sounddatei abspielen
|
||||||
******** Vibrieren
|
* Vibrieren
|
||||||
* Benachrichtigungen erstellen
|
* Benachrichtigungen erstellen
|
||||||
******* Benachrichtigungen schließen
|
* Benachrichtigungen schließen
|
||||||
******* Broadcast verschicken
|
* Broadcast verschicken
|
||||||
******** Script/Befehl ausführen
|
* Script/Befehl ausführen
|
||||||
******* Bildschirm aktiv halten
|
* Bildschirm aktiv halten
|
||||||
* Variablen setzen
|
* Variablen setzen
|
||||||
* Telefonanrufe starten
|
* Telefonanrufe starten
|
||||||
**********Telefonanrufe beenden
|
* Telefonanrufe beenden
|
||||||
********** Text in Zwischenablage kopieren
|
* Text in Zwischenablage kopieren
|
||||||
********* Screenshot erstellen
|
* Screenshot erstellen
|
||||||
********* GPS Einstellungen setzen
|
* GPS Einstellungen setzen
|
||||||
* SMS verschicken
|
* SMS verschicken
|
||||||
|
|
||||||
Es ist ziemlich schwierig diese Anwendung über die vielen verschiedenen Geräte und Android Versionen am Laufen zu halten. Ich kann vieles im Emulator testen, aber eben nicht alles.
|
Es ist ziemlich schwierig diese Anwendung über die vielen verschiedenen Geräte und Android Versionen am Laufen zu halten. Ich kann vieles im Emulator testen, aber eben nicht alles.
|
||||||
|
@ -26,6 +26,7 @@ Déclencheurs :
|
|||||||
* Appareil démarré
|
* Appareil démarré
|
||||||
* Service démarré
|
* Service démarré
|
||||||
* Variables qui ont été définies
|
* Variables qui ont été définies
|
||||||
|
...et bien plus encore
|
||||||
|
|
||||||
Actions :
|
Actions :
|
||||||
* Basculer Wifi (supprimé des appareils plus récents en raison des restrictions Google)
|
* Basculer Wifi (supprimé des appareils plus récents en raison des restrictions Google)
|
||||||
@ -47,6 +48,7 @@ Actions :
|
|||||||
* Fermer les notifications
|
* Fermer les notifications
|
||||||
* Définir des variables
|
* Définir des variables
|
||||||
* Initier des appels téléphoniques
|
* Initier des appels téléphoniques
|
||||||
|
...et bien plus encore
|
||||||
|
|
||||||
Explications sur l'utilisation des autorisations :
|
Explications sur l'utilisation des autorisations :
|
||||||
https://server47.de/automation/permissions.php
|
https://server47.de/automation/permissions.php
|
@ -23,6 +23,7 @@ Eventi supportati:
|
|||||||
* Profilo attivo o meno
|
* Profilo attivo o meno
|
||||||
* Broadcasts di altre app
|
* Broadcasts di altre app
|
||||||
* Variabili che sono state impostate
|
* Variabili che sono state impostate
|
||||||
|
...e molto altro ancora
|
||||||
|
|
||||||
Azioni supportate:
|
Azioni supportate:
|
||||||
* Cambia lo stato del wifi
|
* Cambia lo stato del wifi
|
||||||
@ -46,6 +47,7 @@ Azioni supportate:
|
|||||||
* Creare notifiche
|
* Creare notifiche
|
||||||
* Imposta variabili
|
* Imposta variabili
|
||||||
* Avviare telefonate
|
* Avviare telefonate
|
||||||
|
...e molto altro ancora
|
||||||
|
|
||||||
È piuttosto difficile mantere questa applicazione funzionante su tutti gli hardware esistenti ed includendo tutti i cambi che Android riceve fra una versione e l'altra. Posso effettuare tests nell'emulatore, ma non sarà possibile trovare tutti gli errori.
|
È piuttosto difficile mantere questa applicazione funzionante su tutti gli hardware esistenti ed includendo tutti i cambi che Android riceve fra una versione e l'altra. Posso effettuare tests nell'emulatore, ma non sarà possibile trovare tutti gli errori.
|
||||||
Pertanto, se una certa funzione non funziona sul tuo dispositivo - fammelo sapere. Nel corso degli anni ho potuto risolvere tutti gli errori che sono stati riportati in maniera ragionevole. Infatti, per questo, dipendo dalle informazioni condivise.
|
Pertanto, se una certa funzione non funziona sul tuo dispositivo - fammelo sapere. Nel corso degli anni ho potuto risolvere tutti gli errori che sono stati riportati in maniera ragionevole. Infatti, per questo, dipendo dalle informazioni condivise.
|
||||||
|
@ -25,6 +25,7 @@ Ondersteunde triggers:
|
|||||||
* Profiel actief of niet
|
* Profiel actief of niet
|
||||||
* Broadcasts van andere apps
|
* Broadcasts van andere apps
|
||||||
* Variabelen die zijn ingesteld
|
* Variabelen die zijn ingesteld
|
||||||
|
...en nog veel meer
|
||||||
|
|
||||||
Ondersteunde acties:
|
Ondersteunde acties:
|
||||||
* Wijzig wifi status
|
* Wijzig wifi status
|
||||||
@ -48,6 +49,7 @@ Ondersteunde acties:
|
|||||||
* Meldingen maken
|
* Meldingen maken
|
||||||
* Stel variabelen in
|
* Stel variabelen in
|
||||||
* Start telefoongesprekken
|
* Start telefoongesprekken
|
||||||
|
...en nog veel meer
|
||||||
|
|
||||||
Het is lastig om deze App werkend te houden over de vele verschillende hardware en de vele veranderingen die Android ondergaat in de loop der versies.
|
Het is lastig om deze App werkend te houden over de vele verschillende hardware en de vele veranderingen die Android ondergaat in de loop der versies.
|
||||||
Ik test het in een emulator, maar dat kan niet alle bugs laten zien.
|
Ik test het in een emulator, maar dat kan niet alle bugs laten zien.
|
||||||
|
@ -1,23 +1,77 @@
|
|||||||
Skaner kodów kreskowych to darmowa i otwarta aplikacja, która umożliwia odczytywanie i generowanie kodów kreskowych. Może gromadzić informacje o produktach spożywczych, kosmetykach i książkach.
|
Twórz reguły składające się z wyzwalaczy i akcji. Wybitnym przykładem może być coś takiego jak "Wycisz telefon w pracy".
|
||||||
|
|
||||||
Różne formaty kodów kreskowych są zarządzane przez aplikację:
|
Oto lista obsługiwanych wyzwalaczy i akcji:
|
||||||
• dwuwymiarowe kody kreskowych: QR Code, Data Matrix, PDF 417, AZTEC
|
|
||||||
• jednowymiarowe kody kreskowe: EAN 13, EAN 8, UPC A, UPC E, Code 128, Code 93, Code 39, Codabar, IT
|
|
||||||
|
|
||||||
Zbiera informacje o produkcie podczas skanowania:
|
Obsługiwane wyzwalacze:
|
||||||
• Produkty spożywcze z Open Food Facts
|
* Lokalizacja
|
||||||
• Kosmetyki z otwartymi faktami na temat urody
|
* Dzień/godzina
|
||||||
• Produkty spożywcze dla zwierząt domowych z Open Pet Food Fakty
|
* Stan ładowania
|
||||||
• Książki z Open Library
|
* Poziom naładowania baterii
|
||||||
|
* Nawiązano połączenie USB z komputerem
|
||||||
|
* Aktualna prędkość
|
||||||
|
* Szum tła (tylko do Androida 7)
|
||||||
|
* Połączenie Wi-Fi
|
||||||
|
* Inne uruchomione aplikacje
|
||||||
|
* Tryb samolotowy
|
||||||
|
* Status roamingu
|
||||||
|
* Tagi NFC
|
||||||
|
* Wykrywanie aktywności (nie w wersji F-Droid)
|
||||||
|
* Połączenie Bluetooth
|
||||||
|
* Podłączony zestaw słuchawkowy
|
||||||
|
* Powiadomienia o innych aplikacjach
|
||||||
|
* Orientacja urządzenia (żyroskop)
|
||||||
|
* Profil aktywny lub nie
|
||||||
|
* Stan ekranu (włączony lub wyłączony)
|
||||||
|
* Stan odtwarzania multimediów
|
||||||
|
* Urządzenie się uruchamia
|
||||||
|
* Usługa jest uruchamiana
|
||||||
|
* Transmisje innych aplikacji
|
||||||
|
* Stan routera
|
||||||
|
* Stany systemu (Bluetooth/Wi-Fi)
|
||||||
|
* Zmienne, które zostały ustawione
|
||||||
|
* Spotkania w kalendarzu
|
||||||
|
* Rozmowa telefoniczna uruchomiona
|
||||||
|
|
||||||
Funkcje aplikacji :
|
Obsługiwane działania:
|
||||||
• Wystarczy skierować aparat smartfona na kod kreskowy i natychmiast otrzymać o nim informację. Możesz także skanować kody kreskowe za pomocą obrazu w smartfonie.
|
* Zmień stan Wi-Fi
|
||||||
• Za pomocą prostego skanowania czytaj wizytówki, dodawaj nowe kontakty, dodawaj nowe wydarzenia do swojego planu, otwieraj adresy URL, a nawet łącz się z Wi-Fi.
|
* Zmień stan bluetooth
|
||||||
• Skanuj kody kreskowe produktów spożywczych, aby otrzymywać informacje o ich składzie dzięki bazom danych Open Food Facts i Open Beauty Facts.
|
* Przełącz tethering USB
|
||||||
• Wyszukaj informacje o skanowanym produkcie, dzięki szybkiemu badaniu na różnych stronach internetowych, takich jak Amazon lub Fnac.
|
* Przełącz tethering Wi-Fi
|
||||||
• Śledź wszystkie zeskanowane kody kreskowe za pomocą narzędzia historii.
|
* Przełącz tethering Bluetooth
|
||||||
• Generuj własne kody kreskowe
|
* Przełącz automatyczne obracanie ekranu
|
||||||
• Dostosuj interfejs za pomocą różnych kolorów, jasnego motywu lub ciemnego. Aplikacja integruje funkcje Androida 12, umożliwiając dostosowanie kolorów w zależności od tapety.
|
* Wyślij żądanie HTTP
|
||||||
• Teksty są w całości tłumaczone na język angielski, hiszpański, francuski, niemiecki, polski, rosyjski i chiński.
|
* Zmień ustawienie dzwonka / dźwięku
|
||||||
|
* Uruchom inną aplikację
|
||||||
|
* Czekaj (pomiędzy innymi czynnościami)
|
||||||
|
* Włącz lub wyłącz ekran
|
||||||
|
* Przełącz tryb samolotowy
|
||||||
|
* Przełącz komórkowe połączenie transmisji danychc
|
||||||
|
* Odczytaj tekst
|
||||||
|
* Otwórz odtwarzacz muzyki
|
||||||
|
* Kontroluj odtwarzanie multimediów
|
||||||
|
* Zmień jasność ekranu
|
||||||
|
* Odtwórz plik dźwiękowy
|
||||||
|
* Tworzenie powiadomień
|
||||||
|
* Zamknij powiadomienia
|
||||||
|
* Wysyłaj transmisje
|
||||||
|
* Uruchom skrypt/polecenie
|
||||||
|
* Utrzymuj aktywny ekran
|
||||||
|
* Ustawianie zmiennych
|
||||||
|
* Inicjowanie połączeń telefonicznych
|
||||||
|
* Zakończ połączenia telefoniczne
|
||||||
|
* Skopiuj tekst do schowka
|
||||||
|
* Zrób zrzut ekranu
|
||||||
|
* Zmień ustawienie lokalizacji
|
||||||
|
* Wyślij wiadomość tekstową
|
||||||
|
|
||||||
Ta aplikacja szanuje Twoją prywatność. Nie zawiera żadnych trackerów i nie zbiera żadnych danych.
|
Dość trudno jest utrzymać tę aplikację działającą na wielu różnych urządzeniach, a także na wielu zmianach, jakie Android przechodzi w wersjach. Mogę to przetestować w emulatorze, ale to nie może pokazać wszystkich błędów.
|
||||||
|
Więc jeśli jakaś funkcja nie działa na Twoim urządzeniu - daj mi znać. Przez lata naprawiłem prawie wszystkie błędy, które zostały mi rozsądnie zgłoszone. Ale w tym zakresie jestem zależny od twojego wkładu. Jeśli masz problem i myślisz o skontaktowaniu się ze mną, proszę - Najpierw zaktualizuj do najnowszej wersji i sprawdź, czy problem nadal występuje. - Najpierw sprawdź listę znanych problemów: https://server47.de/automation/index.php#knownProblems
|
||||||
|
|
||||||
|
Darowizny to z pewnością dobry, ale nie jedyny sposób na zmotywowanie mnie :-)
|
||||||
|
* Jeśli chcesz mnie wesprzeć, możesz również wystawić pozytywną recenzję aplikacji w Google Play (https://play.google.com/store/apps/details?id=com.jens.automation2).
|
||||||
|
* Jeśli podoba Ci się aplikacja, zawsze mile widziane są ciepłe słowa za pośrednictwem poczty elektronicznej.
|
||||||
|
* Ponadto zawsze mogę skorzystać z pomocy w tłumaczeniu aplikacji. Angielski, niemiecki i trochę hiszpański należą do moich własnych umiejętności. Italiano e russo sono già coperti. Ale wszystko inne jest więcej niż mile widziane.
|
||||||
|
* Jeśli masz talent/doświadczenie w projektowaniu graficznym i masz jakieś pomysły na ładniejsze ikony, daj mi znać.
|
||||||
|
* Jeśli masz ciekawy przypadek użycia lub znalazłeś sposób na połączenie wyzwalaczy i akcji, aby osiągnąć coś intrygującego i uważasz, że warto umieścić to na stronie przykładów (https://server47.de/automation/examples.html), daj mi znać.
|
||||||
|
|
||||||
|
Wyjaśnienie wielu uprawnień można znaleźć tutaj: https://server47.de/automation/permissions.php
|
@ -1 +1 @@
|
|||||||
Darmowa i otwartoźródłowa aplikacja do odycztywania i tworzenia kodów QR.
|
Zautomatyzuj rzeczy na swoim urządzeniu, tworząc reguły.
|
@ -23,6 +23,7 @@
|
|||||||
* Состояние профиля
|
* Состояние профиля
|
||||||
* Broadcast от других приложений
|
* Broadcast от других приложений
|
||||||
* Переменные, которые были установлены
|
* Переменные, которые были установлены
|
||||||
|
...и многое другое
|
||||||
|
|
||||||
Действия:
|
Действия:
|
||||||
* Вкл/Выкл Wi-Fi
|
* Вкл/Выкл Wi-Fi
|
||||||
@ -45,6 +46,7 @@
|
|||||||
* Создать уведомление
|
* Создать уведомление
|
||||||
* Установка переменных
|
* Установка переменных
|
||||||
* Инициирование телефонных звонков
|
* Инициирование телефонных звонков
|
||||||
|
...и многое другое
|
||||||
|
|
||||||
Достаточно сложно поддерживать работоспособность этого приложения на всех версиях устройств и Android. Я проверяю его в эмуляторе, но это не может обнаружить все ошибки.
|
Достаточно сложно поддерживать работоспособность этого приложения на всех версиях устройств и Android. Я проверяю его в эмуляторе, но это не может обнаружить все ошибки.
|
||||||
Поэтому если какая-то функция не рабоатет на вашем устройстве- дайте мне знать. Я постоянно устраняю ошибки, полученные от пользователей, но для этого мне нужна обратная связь.
|
Поэтому если какая-то функция не рабоатет на вашем устройстве- дайте мне знать. Я постоянно устраняю ошибки, полученные от пользователей, но для этого мне нужна обратная связь.
|
||||||
|
@ -23,6 +23,7 @@
|
|||||||
* 情景模式是否激活
|
* 情景模式是否激活
|
||||||
* 其他应用的广播
|
* 其他应用的广播
|
||||||
* 已设置的变量
|
* 已设置的变量
|
||||||
|
...以及更多
|
||||||
|
|
||||||
支持的动作:
|
支持的动作:
|
||||||
* 更改 WLAN 状态
|
* 更改 WLAN 状态
|
||||||
@ -46,6 +47,7 @@
|
|||||||
* 创建通知
|
* 创建通知
|
||||||
* 设置变量
|
* 设置变量
|
||||||
* 发起通话
|
* 发起通话
|
||||||
|
...以及更多
|
||||||
|
|
||||||
保持这个应用在各种不同硬件、Android 版本的大量更改中正常运行是很困难的。我可以在模拟器中测试,但这样不能显示所有的错误。
|
保持这个应用在各种不同硬件、Android 版本的大量更改中正常运行是很困难的。我可以在模拟器中测试,但这样不能显示所有的错误。
|
||||||
因此,如果某个功能无法在您的设备上运行——请告诉我。多年来,我已经修复了几乎所有合理地报告给我的错误。但为此我依赖于您的输入。
|
因此,如果某个功能无法在您的设备上运行——请告诉我。多年来,我已经修复了几乎所有合理地报告给我的错误。但为此我依赖于您的输入。
|
||||||
|
Loading…
Reference in New Issue
Block a user