Pregunta

Estoy tratando de construir un SyncAdapter que se debe ejecutar cada pocos segundos para la verificación rápida de datos específicos.Estoy usando el siguiente código para ejecutar SyncAdapter

ContentResolver.setIsSyncable(account, CONTENT_AUTHORITY, 1);           
ContentResolver.setSyncAutomatically(account, CONTENT_AUTHORITY, true);

y la sincronización son accionados lo correctamente sin embargo me di cuenta de que se llame sólo una vez cada diez minutos.Basado en android de formación http://developer.android.com/training/sync-adapters/running-sync-adapter.html diciendo:

Cuando una conexión de red disponible, el sistema Android envía un mensaje cada pocos segundos para mantener el dispositivo TCP/IP abierta la conexión.Este mensaje también va para el ContentResolver de cada app.Llamando setSyncAutomatically(), puede ejecutar la sincronización adaptador de cada vez que el ContentResolver recibe el mensaje.

La conexión a la red i sin embargo, es sólo la conexión 3G, WiFi no se trata de una razón en la larga espera?¿Cómo puedo hacer que mi adaptador para que se ejecute cada 10 segundos?Ya he intentado usar el periódico de sincronización

ContentResolver.addPeriodicSync(account, CONTENT_AUTHORITY, new Bundle(), 10);

pero aún se ejecuta cada 10 minutos.

¿Fue útil?

Solución

Usted es víctima de android SyncManager.Considere este escenario:agregar una cada 10 minutos de sincronización para su aplicación, pero tiene instalado mi aplicación en su teléfono que así le pide al gerente de 10 minutos periódico de sincronización y mi solicitud hizo la programación requisito de un segundo antes de que el tuyo :) La operación de sincronización de mi aplicación implica una transferencia de grandes cargas de datos, por lo tanto el uso de la totalidad ( o casi ) de ancho de banda de la conexión a internet disponible.El smart SyncManager verá que no es prudente iniciar otro proceso de sincronización hasta que el anterior se hace, y por lo que se espera concluir el proceso, y sólo después de despedir a su sincronización.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top