android - que - how to put hashtags on youtube videos
Patrón de diseño Google IO Rest, ContentProvider terminado y atascado ahora (1)
Así que después de ver el muy conocido video sobre este tema, decidí ir con el patrón de diseño B. Usar un proveedor de contenido con servicehelper.
Básicamente tengo los siguientes archivos:
- MyProvider
- Mi base de datos
- Mi contrato
en la actividad ahora puedo obtener el contentresolver y consultar al proveedor. Todo está funcionando muy bien hasta ahora.
Ahora necesito sincronizar mi proveedor de contenido para recuperar datos de mi API REST. Por lo tanto, necesito implementar un servicio de servicio auxiliar y un método de descanso. El estudio de la aplicación Google IO me ha ayudado mucho, soy un novato con Android, por lo que todavía es difícil averiguarlo.
Veo que Google usa RemoteHandlers para procesar los datos externos, ¿supongo que son las clases de Procesador en el diagrama?
Lo que no entiendo es cómo puedo implementar la parte de servicio servicehelper + para obtener los datos de la red.
- ¿Dónde llamo al servicio auxiliar?
- ¿Qué deben hacer exactamente el servicio y el ayudante?
- ¿Hay buenos ejemplos de este patrón de diseño exacto?
He leído varios temas en la pila sobre esto, todos sugiriendo diferentes métodos. Encontré un ejemplo que declara un proveedor de servicios de restauración y luego myProvider tiene que extender ese proveedor. No me gustan esas soluciones y quiero seguir este patrón de diseño estructurado. ¡Espero que ustedes puedan ayudarme!
Edición: la fuente del proyecto está disponible: https://github.com/samvdb/TracknTrace
En mi entendimiento, el patrón es:
- No muestres una actividad vacía y carga el contenido en segundo plano. Cuando falla la carga no se puede mostrar nada.
- En su lugar, muestra los datos almacenados en la base de datos accesible a través de un proveedor de contenido y un adaptador, lo que garantiza que el usuario siempre vea un contenido
- En segundo plano, obtenga datos nuevos, una vez que los datos están en el teléfono, la actividad se actualiza automáticamente a través del adaptador
A tus preguntas (he cambiado el orden):
¿Dónde llamo al servicio auxiliar?
Elijo el patrón A de las vigilias. En ese caso la llamada depende de su aplicación. Puede activar la actualización cuando se inicia la aplicación, cuando se crea la actividad o cuando el usuario selecciona un botón de actualización. Elegiría en la creación de la actividad.
Ha elegido el patrón B. En ese caso, está claro que el proveedor de contenido debe activar la actualización. ¿Cuando? Para obtener nuevos datos: en el momento de la creación o después del primer acceso de lectura. Yo usaría el tiempo de creación. Para crear, actualizar, eliminar después de la acción correspondiente en su proveedor de contenido.
¿Hay buenos ejemplos de este patrón de diseño exacto?
Desde mi publicación en https://.com/a/8693919/734687 : la única implementación de referencia de código abierto que conozco está disponible en http://datadroid.foxykeep.com . Es una biblioteca que puedes usar en tu propia aplicación. La arquitectura se explica en / presentación: asegúrese de leerla.
¿Qué necesita hacer exactamente el ayudante de servicio?
Si observa las slides en la diapositiva 19, se trata de un singleton que encapsula la llamada al servicio y maneja las llamadas asíncronas a través de los identificadores de solicitud.
¿Qué necesita hacer el servicio exactamente?
El servicio (diapositiva 17 en la presentación) solo garantiza que la acción se realice en segundo plano.