2014-01-08 27 views
0

我有這個很奇怪的問題。我有一個登錄我的AIR應用程序的過程。當我在Flash CS5.5中運行它時,我可以成功打開日誌文件並對其進行修改。當我使用AIR 2.6發佈應用程序(試用swf,exe和OS-X應用程序)時,應用程序會在我第一次嘗試訪問日誌文件時凍結。我使用的代碼如下:發佈後文件無法工作AIR應用程序

public function log(action:String) 
{ 
    var file:File ; 
    var time:Date ; 
    var time_str:String ; 

    time = new Date(); 
    time_str = time.getFullYear()+"-"+(time.getMonth()+1)+"-"+time.getDate(); 
    try { 
    file = File.documentsDirectory.resolvePath("IdeasMappingData/" +time_str + "_" + "log.txt"); 

    var stream:FileStream = new FileStream() 

     stream.open(file, FileMode.APPEND); 

     time_str += "\t"+time.getHours()+":"+time.getMinutes(); 

     trace(time_str+"\t"+action); 
     stream.writeUTFBytes(time_str+"\t"+action+"\n"); 
     stream.close(); 
    } catch (error:IOError) { 
     trace("The stream could not be accessed for logging."); 
    } 
} 

任何幫助,非常感謝。謝謝。

+0

我看不出有任何問題的代碼,你確定問題在於這個功能,而不是其他地方? – Zhafur

回答

0

嘗試

file = new File(File.documentsDirectory.resolvePath("IdeasMappingData/" +time_str + "_" + "log.txt").nativePath) ; 

file = File.documentsDirectory.resolvePath("IdeasMappingData/" +time_str + "_" + "log.txt"); 

空氣有一段奇特的安全方法Intsead當您使用與resolvePath直接

相關問題