2012-11-17 29 views

回答

0
  1. 更好地存儲您的ApplicationStoragePath文件中,這樣就可以避免一些安全(拒絕訪問)問題。
  2. 確保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);    
    } 
    
+0

許多THX,它看起來像一塊代碼的伊夫一直在尋找,剩下一個問題:我如何測試互聯網(wifi,3G)在空中(android)?可以說,我輕按一鍵,但不會打開菜單,直到有互聯網連接 – mirzahat

+0

您可以使用URLMonitor類來找到你的應用程序是否是脫機或聯機。 –