Ein Bekannter von mir will die Fritz "SmartControl" Türkontakte dafür einsetzen, dass in einem Projekt für betreutes Wohnen das Öffnen von Notausgängen auf dem Smartphone des Betreuers signalisiert wird. Dazu sind 5 dieser Kontakte an einer Fritzbox angemeldet und das Handy des Betreuers ist im WLAN der Fritzbox eingebucht. Auf dem Samsung-Android-Handy läuft die Fritz-App. Im Prinzip und zu Anfang läuft das auch wie erwartet, die Probleme kommen mit der Zeit. Anscheinend deaktiviert das OS die (im Hintergrund) laufende App nach einiger Zeit (20..30min), so dass keine Signalisierungen mehr erfolgen. Guckt man nach einiger Zeit gezielt auf die App, "flutschen" plötzlich veraltete Meldungen quasi gestapelt herein. In der App findet sich keinerlei Einstellung zu dem Problem, im OS konnte auch nichts gefunden werden. Selbst die App "Dont Kill my App", die anscheinend extra gegen dieses Problem entwickelt wurde, löst es nur ungenügend: Dann wird die App zwar nicht mehr narkotisiert, aber nach genau 49 Signalisierungen kommen keine weiteren. Niemals. Da hilft nur Beenden und neu starten der App. Mein Bekannter hat dann noch ein Set mit ähnlicher Funktion von IKEA gekauft, aber auch hier nach exakt 49 Meldungen Ende der Fahnenstange ... Auch das muss seine Ursache im OS haben :-( Jemand eine Idee, wie man dem beikommt?
:
Bearbeitet durch User
Da andere Apps das ja irgendwie besser hinbekommen, wirds wohl an der App liegen. Das Android und auch IOS bzgl. der Hintergrundaktivitäten von Apps sehr restriktiv sind, und sich das auch überhaupt nicht beeinflussen lässt, sollte ein kundiger Entwickler natürlich berücksichtigen. Oliver
Wenn der Service wirklich wichtig sein sollte, kommt man daran nicht vorbei: 2. Dienste im Vordergrund (Foreground Services): So starten Sie einen Dienst im Vordergrund: Erstellen Sie einen Dienst, der die gewünschte Aufgabe ausführt. Rufen Sie in der Methode onStartCommand() des Dienstes ServiceCompat.startForeground() auf. Vorteile von Diensten im Vordergrund: Ermöglicht asynchrone Aufgaben, die für den Benutzer sichtbar sein müssen. Reduziert die Wahrscheinlichkeit, dass der Dienst vom System beendet wird. Nachteile: Erhöhter Akkuverbrauch. Irgendeine Kröte wird der Nutzer schlucken müssen.
Dieter D. schrieb: > So starten Sie einen Dienst im Vordergrund: > Erstellen Sie einen Dienst, der die gewünschte Aufgabe ausführt. > Rufen Sie in der Methode onStartCommand() des Dienstes > ServiceCompat.startForeground() auf. Ähm ... ja, klingt prinzipiell plausibel. Aber wie setze ich das denn als User mit einer fertigen App um? Gibts auf Android eine Shell oder sowas?
Frank E. schrieb: > Ähm ... ja, klingt prinzipiell plausibel. Ähm…, plausibel und SuperDiet schliesst sich von vornherein vollständig aus. Frank E. schrieb: > Aber wie setze ich das denn > als User mit einer fertigen App um? Gar nicht. Geht nicht. Oliver
Frank E. schrieb: > In der App findet sich keinerlei Einstellung zu dem Problem, im OS > konnte auch nichts gefunden werden Sicher? Unter Android gibt es eine Einstellung, eine App nie abzuwürgen. Praktischerweise heißt die bei jeder Android -Version anders (z.B. "Batterie-Optimierung") und ist in den Einstellungen an anderer Stelle zu finden (in den Einstellungen der App, oder unter den Energie-Einstellungen). Das funktioniert dann durchaus. Bei Samsung-Geräten gibt es diese Einstellung schon länger, wenn du das genaue Gerät und Android -Version verrätst kann man vielleicht genauer helfen...
Niklas G. schrieb: > Bei Samsung-Geräten gibt es diese Einstellung schon länger, wenn du das > genaue Gerät und Android -Version verrätst kann man vielleicht genauer > helfen... Es handelt sich um ein frisch gekauftes Galaxy A16 5G, Modell SM-A166/B-DS, mit Android 15. Die Fritz-App "SmartHome" ist vom 05-06.2025, Version 1.20.1.
Frank E. schrieb: > Es handelt sich um ein frisch gekauftes Galaxy A16 5G In die Android-Einstellungen gehen, unter "Apps" die verwendete raussuchen, auf "Akku" klicken und dann "uneingeschränkt" auswählen.
Frank E. schrieb: > Galaxy A16 5G Settings - Battery and device care - Battery - Background usage limits, und dann die App bei "Sleeping apps" und "Deep sleeping apps" entfernen und bei "Never sleeping apps" hinzufügen.
Frank E. schrieb: > Aber wie setze ich das denn als User mit einer fertigen App um? Das war von mir zu viel interpretiert worden, weil Entwicklermodus mit einer (eigenen) Anwendung, die die API der App verwendet, liegt hier nicht vor. Daher ist das so, wie Oliver schrieb: Oliver S. schrieb: > Gar nicht. Geht nicht. Frank E. schrieb: > Da hilft nur Beenden und neu starten der App. Es gibt allerdings einige Android-Apps, mit denen sich Anwendungen nach einem Zeitplan starten und beenden lassen. Was man versuchen könnte, wäre AutomateIt, Tasker, oder die Digital Wellbeing-Funktionen von Samsung. Damit wäre es möglich die App zum Beispiel jede Stunde neu zu starten. Das ermöglicht zumindest einen der harten Work-Arounds zu realisieren. Ob es noch weitere mögliche Lösungswege gibt, inklusive hier von weiteren Forenmitgliedern genannten, muss ich passen.
Oliver S. schrieb: > Das Android und auch IOS bzgl. der Hintergrundaktivitäten von Apps sehr > restriktiv sind, und sich das auch überhaupt nicht beeinflussen lässt, > sollte ein kundiger Entwickler natürlich berücksichtigen. Es ist aber prinzipiell möglich, Apps so zu schreiben, daß sie externe Ereignisse mitbekommen und sich dadurch aktivieren/bemerkbar machen. Das schaffen einseits diverse Banking-2-Faktor-Apps, und andererseits auch die "Fritz"-App von AVM selbst, die als VoIP-Telephon mit der lokalen Fritzbox verbandelt ist. Keine der Apps muss aktiv im Vordergrund sein oder überhaupt laufen, damit die entsprechenden Mechanismen funktionieren. Offensichtlich sehen die Betriebssysteme entsprechende "Hooks" vor, mit denen Apps sich für derartige Funktionalität im System anmelden können.
Harald K. schrieb: > Es ist aber prinzipiell möglich, Apps so zu schreiben, daß sie externe > Ereignisse mitbekommen und sich dadurch aktivieren/bemerkbar machen. Ja, theoretisch ist das so. Das Problem ist, dass viele Hersteller als Massnahme gegen unsaubere Apps, die ungewollt den Akku leeren, einfach mal alles abschiessen, was nicht entweder auf der Whitelist des Herstellers steht oder explizit (über mitunter schwer auffindbare Menüpunkte) freigegeben wird. Ein typisches Beispiel dafür sind Messenger. Während WhatsApp meistens problemlos läuft, erfordern andere oft einen Konfigurations-Eingriff, damit sie dauerhaft im Hintergrund Nachrichten empfangen können. Hier ist das ganz gut zusammengefasst: https://dontkillmyapp.com/
Harald K. schrieb: > Offensichtlich sehen die Betriebssysteme entsprechende "Hooks" vor, mit > denen Apps sich für derartige Funktionalität im System anmelden können. Firebase Cloud Messaging - die Google Play Services auf dem Gerät halten die Verbindung zum Google Server aufrecht und empfangen Benachrichtigung und wecken die App entsprechend auf. Die App muss dann also überhaupt nicht laufen.
Warum muß das die Fritz-App sein? In der FB kann man unter Smart Home/Automatisierung einfache Routinen erstellen. Da kann man dann auch eine Nachricht mit vorkonfiguriertem Inhalt an eine Tel.-Nr. schicken lassen. Also Türkontakt geht auf -> Anruf oder Nachricht absetzen. Muß man dann eben 5 mal für jeden einzelnen Türkontakt machen, kann dafür aber auch in der o.g. Nachricht die Tür genau benennen. Edit: Welcher Zeitverzug dabei entsteht ist mir nichht bekannt, läßt sich aber ermitteln.
:
Bearbeitet durch User
Michael B. schrieb: > In der FB kann man unter Smart Home/Automatisierung einfache Routinen > erstellen. Da kann man dann auch eine Nachricht mit vorkonfiguriertem > Inhalt an eine Tel.-Nr. schicken lassen. Entweder das versuchen, mit der Fritz-Fon App könnte man durch einen Internen Anruf auch eventuelle Telefongebühren umgehen falls ansonsten keine Telefongeräte mit der FB genutzt werden. Ansonsten gäbe es auch noch die Option anstelle eines Anrufes eine Push-Benachrichtigung auf ein Email-Adresse auszulösen, evtl kann ja eine der beiden Optionen das Limit mit den 49 Nachrichten umgehen... https://fritz.com/service/wissensdatenbank/dok/FRITZ-DECT-350/1632_Push-Service-einrichten/
Android betreibt sein WLAN-Interface recht gern im "Power Save"-Mode. D.h. auch eine im Vordergrund laufende App, wird u.U. von ihrer Nachrichtenquelle nicht erreicht. Das kann man mit mit einem "Ping" auf die IP-Adresse des Telefons sehr schön sehen und testen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.