una tera suspendo sigue reinicia pauso pausar otro las despues descargas descargando descarga continuar como cancelan apago apagar flex actionscript-3 air download

tera - ¿Pausa y reanuda la descarga en flex?



si pauso una descarga y apago la pc (2)

Sí, desearía usar la clase URLStream (URLLoader no admite descargas parciales) y el encabezado del rango HTTP . Tenga en cuenta que hay algunas restricciones de seguridad onerosas en el encabezado del rango, pero debería estar bien en una aplicación de AIR. Aquí hay un código no probado que debería darle la idea general.

private var _us:URLStream; private var _buf:ByteArray; private var _offs:uint; private var _paused:Boolean; private var _intervalId:uint; ... private function init():void { _buf = new ByteArray(); _offs = 0; var ur:URLRequest = new URLRequest( ... uri ... ); _us = new URLStream(); _paused = false; _intervalId = setInterval(500, partialLoad); } ... private function partialLoad():void { var len:uint = _us.bytesAvailable; _us.readBytes(_buf, _offs, len); _offs += len; if (_paused) { _us.close(); clearInterval(_intervalId); } } ... private function pause():void { _paused = true; } ... private function resume():void { var ur:URLRequest = new URLRequest(... uri ...); ur.requestHeaders = [new URLRequestHeader("Range", "bytes=" + _offs + "-")]; _us.load(ur); _paused = false; _intervalId = setInterval(500, partialLoad); }

¿Es posible en una aplicación aérea iniciar una descarga, pausarla y luego reanudarla?

Quiero descargar archivos muy grandes (1-3 Gb) y necesito estar seguro de que si la conexión se interrumpe, la próxima vez que el usuario intente descargar el archivo, comenzará desde la última posición.

Se apreciarán todas las ideas y ejemplos de código fuente.