Wöchentlich etwas ausführen

Ich wuerde gerne in meiner App jeden Mittwoch etwas ausfuehren. Falls es Mittwoch ist und das letzte mal der Aktion der vorherige mittwoch war, so soll die Aktion nochmals ausgefuehrt werden (dabei handelt es sich um eine Datenaktualisierung). Falls es jetzt Donnerstag ist und am vorherigen Tag schon aktuisiert wurde, so soll nichts ausgefuehrt werden. Ist es jedoch Donnerstag und die letzte Aktualisierung fand vor einer Woche statt, so soll natuerlich eine Aktu. ausgefuehrt werden.

Nur habe ich keine wirkliche Idee wie ich sowa implentieren koennte. Wuerde mich ueber Ideen und Anregungen freue(aber bitte postet was kostruktives :smiley: )

https://developer.android.com/reference/android/app/AlarmManager.html

Mal ein Link. Android hat da ja schon ein paar eingebaute Sachen. Es gibt da noch was anderes, dass mir aber gerade nicht einfällt. Der AlarmManager sendet dann einen Intent und startet damit zu bestimmten Zeiten die Anwendung die darauf registriert ist.
Ansonsten müsste die App ja ständig laufen und unnötig Ressourcen verbrauchen.

Im Prinzip hast du zwei Möglichkeiten:
Wie oben schon erwähnt gibts den AlarmManager. Damit kannst du Dinge zeitgesteuert ausführen, auch wenn deine App grade nicht läuft.
Eine weitere Möglichkeit wäre beim Starten der App zu prüfen ob Daten aktualisiert werden müssen. Dazu kannst du dir ganz einfach den letzten Zeitstempel abspeichern und bei jedem Start prüfen ob eine Woche vergangen ist.

Ich habe eher an sowas wie letzteres gedacht. Danke

Noch be kleine Frage: es handelt sich hier in dem Fall um ein Widget, dass jeden Mittwoch seine Daten updaten soll. Gibt es einen Weg, um festzustellen, ob mein Widget gerade sichtbar ist und ich somit ueberpruefen kann ob ich updaten muss? Weil wenn ja, dann muss die onUpdate Methode aufgerufen werden, damit sich der Inhalt aktualisiert.