2015-08-03 12 views
7

Recentemente ho letto su GcmTaskService e GcmNetworkManager per pianificare un'attività. Il mio caso d'uso è tipico di SyncAdapter, in cui ho bisogno di sincronizzare periodicamente alcuni dati con il mio server e attualmente utilizzo SyncAdapter. La mia domanda è quali sono le differenze tra GcmTaskService e SyncAdapter. E quando usare GcmTaskService vs quando usare SyncAdapter?GcmTaskService vs SyncAdapter

+0

http://programmers.stackexchange.com/questions/219357/design-pattern-for-syncing-data-in-android – vsvankhede

risposta

-2

GcmTaskService: implementato dall'applicazione client per fornire un endpoint per GcmNetworkManager da richiamare quando un'attività è pronta per essere eseguita. Le attività devono essere programmate in base a una finestra di esecuzione in tempo. Durante questa finestra di esecuzione lo scheduler utilizzerà la propria discrezione nel selezionare un tempo di esecuzione ottimale, in base alla disponibilità della rete, all'attività della rete e al carico.

Sync Adapter esegue il lavoro di sincronizzazione dei dati tra il server e il database locale. Gli adattatori di sincronizzazione funzionano in modo asincrono, trasferiscono i dati regolarmente ed efficientemente, ma non istantaneamente. Se è necessario eseguire il trasferimento dei dati in tempo reale, è necessario farlo in un AsyncTask o in IntentService. Questo framework aiuta a gestire e automatizzare i trasferimenti di dati e coordina le operazioni di sincronizzazione tra diverse app.

Google Cloud Messaging (GCM) fornisce sia il server che i componenti del dispositivo necessari per far funzionare questo sistema di messaggistica. L'utilizzo di GCM per l'attivazione dei trasferimenti è più affidabile e più efficiente rispetto ai server di polling per lo stato. Mentre il polling richiede un servizio sempre attivo, GCM utilizza un BroadcastReceiver che viene attivato quando arriva un messaggio. Mentre il polling a intervalli regolari utilizza la carica della batteria anche se non sono disponibili aggiornamenti, GCM invia solo messaggi quando necessario.

+3

Il tuo commento non offre chiare differenze tra le due opzioni. – Saket

Problemi correlati