0
當使用Air + AS3 for Android時,如何從服務器下載png?ActionScript 3 + AIR + Android =如何下載PNG文件?在哪裏存儲?
另外,我在哪裏存儲它,以便以後可以不用再下載就可以使用它?
問候 米爾扎
當使用Air + AS3 for Android時,如何從服務器下載png?ActionScript 3 + AIR + Android =如何下載PNG文件?在哪裏存儲?
另外,我在哪裏存儲它,以便以後可以不用再下載就可以使用它?
問候 米爾扎
確保writeBytesToFile()需要指定使用的文件擴展名的文件路徑,以及(如「圖像/ first.png」)
private function download(url:String):void
{
var urlRequest:URLRequest = new URLRequest();
urlRequest.url = url;
var urlStream:URLStream = new URLStream();
urlStream.addEventListener(Event.COMPLETE,onDownload_CompleteHandler);
urlStream.addEventListener(IOErrorEvent.IO_ERROR, onDownload_IOErrorHandler);
urlStream.addEventListener(HTTPStatusEvent.HTTP_RESPONSE_STATUS,onDownload_ResponseStatusHandler);
urlStream.addEventListener(SecurityErrorEvent.SECURITY_ERROR,onDownload_SecurityHandler);
urlStream.load(urlRequest);
}
protected function onDownload_CompleteHandler(event:Event):void
{
var urlStream:URLStream = event.currentTarget as URLStream;
var outBytes:ByteArray = new ByteArray;
urlStream.readBytes(outBytes,0,urlStream.bytesAvailable);
writeBytesToFile(outBytes);
}
private function writeBytesToFile(outBytes:ByteArray):void
{
var fileToWrite:File = File.applicationStorageDirectory.resolvePath("path/to/store/filenamewithextension");//Where you want store
var fileStream:FileStream = new FileStream();
fileStream.addEventListener(Event.CLOSE, onFileStream_CloseHandler);
fileStream.addEventListener(IOErrorEvent.IO_ERROR,onFileStream_IOErrorHandler);
fileStream.openAsync(fileToWrite, FileMode.WRITE);
fileStream.writeBytes(outBytes, 0, outBytes.length);
fileStream.close();
}
protected function onFileStream_CloseHandler(event:Event = null):void
{
trace("File successfully downloaded ");
}
protected function onFileStream_IOErrorHandler(event:IOErrorEvent):void
{
trace("File can't downloaded file doesn't exist ");
}
protected function onDownload_SecurityHandler(event:SecurityErrorEvent):void
{
logger.error("onDownload_SecurityHandler :: " + event.text);
}
protected function onDownload_ResponseStatusHandler(event:HTTPStatusEvent):void
{
trace("onDownload_ResponseStatusHandler :: " + event.status);
}
protected function onDownload_IOErrorHandler(event:IOErrorEvent):void
{
trace("onDownload_IOErrorHandler :: " + event.text);
}
許多THX,它看起來像一塊代碼的伊夫一直在尋找,剩下一個問題:我如何測試互聯網(wifi,3G)在空中(android)?可以說,我輕按一鍵,但不會打開菜單,直到有互聯網連接 – mirzahat
您可以使用URLMonitor類來找到你的應用程序是否是脫機或聯機。 –