【问题标题】:CodenameOne send log fileCodenameOne 发送日志文件
【发布时间】:2016-10-09 10:51:05
【问题描述】:

我刚刚阅读了Log类的Api并尝试了一下,但我根本没有成功。 我用模拟器尝试了以下代码:

    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[]{"dummy@address.de"}, "Log file", m);

这会导致打开一个电子邮件客户端窗口,其中包含正确的地址和正文,但根本没有日志文件附件。可能是因为没有日志文件存在?

有什么建议吗?我需要它。

【问题讨论】:

    标签: logging codenameone


    【解决方案1】:

    Log.sendLog 是专业功能。它与setFileURL 等功能相冲突。

    附件的方法应该可行,我不确定你那里有什么问题。

    【讨论】:

    • 在我的智能手机上安装该应用程序后,它可以正常工作,这意味着日志文件已附加到邮件中。使用 Thunderbird 作为电子邮件客户端的模拟器无法通过电子邮件发送日志文件。我不知道原因是电子邮件客户端还是模拟器。它应该与 emualtor 和其他电子邮件客户端一起使用吗?
    • 模拟器仅使用 mailto: URL,因为 JavaSE 中不提供此功能
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-30
    相关资源
    最近更新 更多