QNA > C > Come Migliorare Le Prestazioni Di Un'applicazione Android Quando Esegue Servizi In Background

Come migliorare le prestazioni di un'applicazione Android quando esegue servizi in background

Questo dipende da cosa fa il tuo servizio, prendiamo un esempio di un servizio che viene lanciato ogni 15 minuti utilizzando Alarm Manager (Inexact Repeating) per controllare i dati più recenti dal server e scaricarli per essere sostituiti con i vecchi dati.

In questo caso scenario noi:

  1. Prendiamo le informazioni sui dati
  2. Controlliamo la data dei nuovi dati
  3. Se nuovi. Memorizzare i dati
  4. Ripetere i prossimi 15 minuti.

Ci sono alcuni consigli per migliorare le prestazioni del servizio:

  1. Controllare la connessione internet: E se il dispositivo è offline? Il servizio continuerà semplicemente a cercare di ottenere i dati dal server e questo consuma batteria e prestazioni, possiamo semplicemente eliminare tutte le attività se il dispositivo è offline.
  2. Se il dispositivo è online e i dati sono superiori a 2 Mb possiamo eliminare il download diretto dei dati e il controllo semplicemente regolando il nostro server per notificare i nuovi cambiamenti dei dati facendo una semplice richiesta che restituisce meno di 5 Kb con i risultati in modo da poter scegliere se scaricare i dati o no.

Facendo queste semplici modifiche il flusso di lavoro del servizio sarà come questo:

  1. Controlla la connettività internet.
  2. Invia una richiesta GET al server per ottenere il valore booleano se dobbiamo scaricare i nuovi dati o no.
  3. Se sì, scarica e memorizza i dati.

Seguendo questo si ha una semplice comprensione su come preservare le prestazioni/la vita della batteria. Assicuratevi sempre che il servizio sia costruito per utilizzare poche risorse (CPU/MEM/NETWORK).

Di Knowling Kaushiva

Quali sono le migliori combo di squadra in AOE2? (inclusi i nuovi civs) :: C'è un buon browser non-Chromium oltre a Firefox per Windows OS?
Link utili