2012-06-04 16 views
5

Utilizando el Administrador de descarga de Android estoy intentando implementar descargas múltiples de archivos pdf sincrónicamente (es decir, una instancia de la solicitud se genera después de completar con éxito la solicitud anterior), poco después de una notificación DOWNLOAD_SUCCESS en la transmisión receptor, se genera una copia duplicada de la misma solicitud (con el mismo ID de solicitud) y DownlaodManager se inicia implícitamente. Por segunda vez, la descarga falla, y DownlaodManager da DownloadManager.status = ERROR NO PUEDE REANUDAR. Por lo tanto, no se descarga el pdf .Esto sucede solo cuando intento la descarga múltiple sincronizada. Se agradece cualquier ayuda.Error en el administrador de descarga android

Respuesta

0

¿Está ejecutando su aplicación en el dispositivo Samsung? Tengo el mismo problema con Nexus S, Galaxy Tab 10.1 y uno cuyo nombre no recuerdo (tienen las versiones de Android 2.3.6, 3.2 y 4.0.4) pero nunca en el HTC Nexus One, HTC Sensation (4.0.x.) y HTC Explorer (2.3.5) o emulador.

que tienen esta consecuencia:

06-05 17:42:26.756: INFO/DownloadManager(12113): Initiating request for download 1551 
06-05 17:42:27.057: INFO/ololo(17021): Status for content://downloads/my_downloads/1551: file exists 
06-05 17:42:27.137: INFO/DownloadManager(12113): Initiating request for download 1551 
06-05 17:42:27.197: WARN/DownloadManager(12113): Aborting request for download 1551: Trying to resume a download that can't be resumed 
06-05 17:42:27.247: WARN/ImageView(17021): Unable to open content: content://downloads/my_downloads/1551 

creo que este es un problema muy interesante.

There personas dicen que este es el problema de Samsung y algunos otros proveedores. Mi solución es implementar mi propio DownloadManager o usar el de otra persona.

1

Me di cuenta de que si inicia otra descarga inmediatamente cuando la corriente ha finalizado, se produce este error. Así que resolví este problema insertando un tiempo de reposo en el hilo actual entre el final y el comienzo de la próxima descarga ... Usé Thread.sleep (1000), pero puede probar otros valores. (asegúrese de no hacerlo en UIThread). Funciona bien para mí;)

+0

Gracias por el mensaje :) – berserk

Cuestiones relacionadas