Uso de adaptadores de sincronización + Volley / RoboSpice para procesamiento sincronizado de solicitudes de red
Mi aplicación necesita solicitar periódicamente al servidor nuevos datos. He investigado sobre esto y muchos sugirieron utilizar el adaptador de sincronización para sincronizar con el servidor, sin embargo, mi requisito cambió y tengo que hacer el siguiente proceso. ¿Es todavía aconsejable utilizar adaptadores de sincronización o puedo utilizar cualquier otra biblioteca para hacer eficientemente la siguiente secuencia de solicitud de Http.
public void onPerformSync(Account account, Bundle extras, String authority, ContentProviderClient provider, SyncResult syncResult) { ZipFile imageZipFile; /*this is a http post request and the size the zipfile is around 1Mb*/ ZipFile resultFile=makeHttpPostRequest(String URL, String payload); SomeObject result= processZipFile(resultZipFile); saveData(result); for(String url:result.getUrls()){ /* this is a HttpGet request which returns a zip file that contains 8 images , total size of zip would be around 200kb*/ imageZipFile= makeHttpGetRequest(url); saveImageZipToDisk(imageZipFile) } }
Como puedes ver, estoy haciendo una solicitud de Http Post para obtener algunos datos que contengan la URL de la imagen y usar esos URL para hacer una nueva solicitud HttpGet. Necesitaría tanto el resultado del POST como las imágenes para que mi aplicación funcione.
- ¿Cómo puedo obtener Robospice para tratar cualquier cosa que no sea una respuesta 200 de Retrofit & OKHttp como un error
- ¿Cómo se genera la clase con T y List <T>
- Uso de RoboSpice en un BroadcastReceiver
- ¿Cómo usar Mockito para probar las API a lo largo de Robospice y Retrofit?
- El edificio con maven falla
¿Es esta una forma válida de utilizar adaptadores de sincronización o es totalmente inaceptable? o ¿Puedo usar Volley / Robo spice para generar las solicitudes de imagen a múltiples hilos? Lo siento, estoy siendo novato, pero este es un escenario que he estado tratando de resolver.
Actualizar:
Así que después de revisar los pros y los contras de Volley y Robospice, estoy utilizando volley como yo podría personalizar el código y tener más control sobre el mecanismo de almacenamiento en caché.
- Guardando colección extranjera en ORMLite con Robospice y Scala
- Subir una imagen a Google appengine utilizando Robospice con Retrofit
- Primavera Android Vs Retrofit
- Detener un proceso de fondo en robospice
- OnStart of new Actividad se llama antes de onStop de padre
- Uso de RoboSpice con Jackson2 y Spring
- Robospice solicitud nunca termina si la aplicación va en el fondo y luego llega a primer plano?
- ¿Cómo aumentar el tiempo de espera para las solicitudes de reacondicionamiento en robospice android?
Todas las alternativas deben estar funcionando.
Con adaptadores asíncronos, obtendrá:
- procesamiento de fondo asíncrono en un proceso androide nativo
- podría ser más ligero que el proceso de la aplicación dependiendo de su diseño
- pero la comunicación entre la aplicación y el adaptador asíncrono implicará IPC, lo que significa paquete / desagregación de cosas
Con Volley, obtendrá:
- procesamiento de fondo asíncrono en el mismo proceso que su aplicación, dentro de Volley threads
- la comunicación entre sus solicitudes y su aplicación será un canal OO de doble vía
Con RoboSpice, obtendrá:
- lo que ofrece volley, pero las solicitudes se ejecutan dentro de un servicio de Android
- posible configuración más fácil del almacenamiento en caché
- más alternativas para el establecimiento de una red (androide de la primavera, cliente del google http, retrofit) etc.
- No se encontró ninguna vista para id – DialogFragment + Fragment
- Android Development – Para hacer referencia a un campo, ¿es necesario usar "this"?