Autore Topic: Notifica con ripetizione  (Letto 442 volte)

Offline tonno16

  • Utente storico
  • *****
  • Post: 1231
  • Respect: +60
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Notifica con ripetizione
« il: 08 Aprile 2015, 10:45:19 CEST »
0
Ciao a tutti. Devo implementare un qualcosa che si attivi ogni x minuti/giorni/settimane/intervallo_variabile.
Come feci precedentemente in altre app ho pensato subito all' alarm manager, in quanto credo sia la scelta più giusta. Pero devo fare scrittura su file ogni volta che scocca l'ora x.

Se l'utente ha il telefono spento per 25 ore? Cosa succede? che la scrittura su file che dovrebbe essere fatta a metà giornata non sarà mai più fatta? Come posso prevenire ciò?

Offline LonelyWolf

  • Utente junior
  • **
  • Post: 148
  • Respect: +12
    • Mostra profilo
    • Traversate dei laghi
  • Dispositivo Android:
    GT-I9505, ALE-L21
  • Sistema operativo:
    Windows 7 32/64
Re:Notifica con ripetizione
« Risposta #1 il: 08 Aprile 2015, 12:07:11 CEST »
0
Non puoi.
Se l'utente decide di tenere spento il dispositivo "sono fatti suoi"!

Edit:
Potresti mettere un controllo su quando viene fatta l'ultima scrittura prima di fare quella nuova e agire di conseguenza.
« Ultima modifica: 08 Aprile 2015, 12:08:43 CEST da LonelyWolf »
Se la mia risposta ti è utile, per favore un thanks!

Offline tonno16

  • Utente storico
  • *****
  • Post: 1231
  • Respect: +60
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Notifica con ripetizione
« Risposta #2 il: 08 Aprile 2015, 12:44:24 CEST »
0
Ma la mia scrittura su file anche se periodica, non è la stessa. Quindi se il telefono viene spento per 25 ore e l'intervallo è ogni 6 ore ovvio che 2 volte non verrà fatta la scrittura. Però alla riaccensione, dovrei comunque fare tali scritture, quindi 2 esattamente. Vorrei sapere il modo più giusto per ovviare a tale problematica

Offline LonelyWolf

  • Utente junior
  • **
  • Post: 148
  • Respect: +12
    • Mostra profilo
    • Traversate dei laghi
  • Dispositivo Android:
    GT-I9505, ALE-L21
  • Sistema operativo:
    Windows 7 32/64
Re:Notifica con ripetizione
« Risposta #3 il: 08 Aprile 2015, 17:24:43 CEST »
0
Allora come ti ho detto:
prima di scrivere sul file apri le preferences/db/altro file leggi data e ora della scrittura precedente se sono solo 6 ore aggiorni con dataora corrente e scrivi il file altrimenti fai il calcolo delle scritture mancanti e aggiorni con data ora dell'ultima scrittura che esegui.
Se la mia risposta ti è utile, per favore un thanks!

Offline arlabs

  • Utente normale
  • ***
  • Post: 434
  • Respect: +49
    • Mostra profilo
  • Dispositivo Android:
    GalaxyS7
  • Play Store ID:
    AR Labs
  • Sistema operativo:
    Windows 10
Re:Notifica con ripetizione
« Risposta #4 il: 14 Aprile 2015, 19:10:18 CEST »
0
Dovrebbe esserci un intent BOOT_COMPLETED a cui registrarsi con un BroadcastReceiver.

Quando il telefono si riavvia, controlli cosa devi aggiungere e riprogrammi l'AlarmManager...