2016-10-08 76 views
1

我剛剛閱讀了類Log的Api並試用了它,但是我根本沒有成功。 我嘗試下面的代碼與模擬器:CodenameOne發送日誌文件

String appHomePath = FileSystemStorage.getInstance().getAppHomePath(); 
    String fileName = (appHomePath + "codenameOne.log"); 
    Log.getInstance().setFileURL(fileName); 
    Log.p("This is a stupid log message!"); 
    Log.getInstance().sendLog(); 

appHomePath獲得價值"file://home/"所以其設置爲日誌文件的URL爲"file://home/codenameOne.log"

之後什麼都沒有發生。日誌內容發送到哪裏?在JavaDoc中有一個暗示,它被髮送到雲。哪個雲?應用程序有沒有權限寫入「/ home」目錄?

然後我試圖通過電子郵件發送:

Message m = new Message("Body of message"); 
m.getAttachments().put(Log.getInstance().getFileURL(), "text/plain"); 
Display.getInstance().sendMessage(new String[]{"[email protected]"}, "Log file", m); 

這導致與正確的地址和正文打開一個電子郵件客戶端的窗口,但有沒有日誌文件附件都沒有。也許是因爲沒有日誌文件存在?

有什麼建議嗎?我需要它。

回答

0

Log.sendLog是一個專業功能。它與諸如setFileURL等功能相沖突。

與附件的方法應該工作,我不知道你有什麼失敗。

+0

在我的智能手機上安裝應用程序後,它工作正常,這意味着日誌文件附加到郵件。通過電子郵件發送日誌文件不適用於使用Thunderbird作爲電子郵件客戶端的模擬器。我不知道是因爲電子郵件客戶端還是模擬器。它應該與emualtor和其他電子郵件客戶端合作嗎? – Guzzer

+0

模擬器僅使用mailto:URL,因爲此功能在JavaSE中不可用 –