App alle 15 Minuten automatisch aktualisieren

  • Antworten:8
  • Bentwortet
Herbert
  • Forum-Beiträge: 5

06.06.2015, 20:22:59 via Website

Hallo, ich hätte eine Frage. Ich habe eine App welche mit einem Webserver kommuniziert. Nach dem Login in meiner App bekomme ich einen TOKEN vom Server, welcher für 15 Minuten gültig ist. Nun möchte ich aber solange der Nutzer sich nicht ausloggt (Logout Button) den TOKEN alle 15 Minuten automatisch aktualisieren. Die Aktualisierung sollte auch erfolgen wenn die App im Hintergrund läuft. Nach der Aktualisierung muss der neue TOKEN wieder für die anderen Klassen verfügbar sein.

Wie kann ich das realisieren? Hätte jemand ev. ein Beispiel?

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

06.06.2015, 20:27:28 via Website

Hallo Herbert,
Herzlich wilkommen hier im Forum :)
dafür kannst du den AlarmManager benutzen: http://javatechig.com/android/repeat-alarm-example-in-android
Den Login kannst du dan in den SharedPreferences spechern

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Herbert
  • Forum-Beiträge: 5

06.06.2015, 20:43:23 via Website

Danke :)

Ich habe jetzt in der AlarmReceiver Methode einen Aufruf der Methode GetToken welche auch in der AlarmReceiver Klasse ist. In dieser Methode bekomme ich einen neuen TOKEN. Wie kann ich diesen dann zurück an die Activities (wird in mehreren benötigt) übergeben?

— geändert am 06.06.2015, 20:44:02

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

06.06.2015, 20:45:03 via Website

Zu den ACtivities kannst du es nicht zurückgeben und würde ich auch nicht machen, wenn man den Lifecycle beachtet.
Ich würde wenn dann den Token in den SharedPreferences speichern und in er Activity diesen auslesen und verwenden.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Herbert
  • Forum-Beiträge: 5

06.06.2015, 20:50:18 via Website

Wie kann ich den TOKEN (String) in den Shared Preferences speichern bzw. auslesen?

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

06.06.2015, 20:51:59 via App

Schau mal hier: http://stackoverflow.com/a/23024962

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Herbert
  • Forum-Beiträge: 5

06.06.2015, 21:08:19 via Website

Gut hat beinahe geklappt ^^
Habe in der AlarmReceiver Methode beim speichern in die Preferences den Error:
Cannot resolve getApplicationContext

— geändert am 06.06.2015, 21:18:18

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

06.06.2015, 21:26:16 via Website

Du musst den Parameter Context des Receivers nehmen. Ein ApplicationContext gibt es in einem Broadcast Receiver nicht

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Herbert
  • Forum-Beiträge: 5

06.06.2015, 21:44:44 via Website

Danke hat geklappt

— geändert am 06.06.2015, 21:50:37

Antworten