• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

Codename One – 获取Log.p()和Log.e()生成的所有日志的可靠方式

codenameone 来源:Francesco Galgani 3次浏览

在我的应用程序的开发阶段,对于我来说,获取由Log.p()Log.e()生成的所有日志在一个字符串中(例如,在一个对话框中显示它们,或者通过电子邮件发送一个不同于你的Log.sendLog()的方法)。Codename One – 获取Log.p()和Log.e()生成的所有日志的可靠方式

这就是为什么我创建了以下方法。我的问题是,如果它是可靠的,如果我没有复制的东西已经存在:

/** 
* Get all logs of the app generated with Log.p() or Log.e() 
* @return All logs of the app generated with Log.p() or Log.e() 
*/ 
public static String getAllLogs() { 
    String logs = ""; 
    try { 
     logs = Util.readToString(Storage.getInstance().createInputStream("CN1Log__$")); 
    } catch (IOException ex) { 
     logs = ""; 
    } 
    return logs; 
} 

===========解决方案如下:

这种方法的主要问题是在OS的处理打开文件的各种方式,所以我会避免使用,因为它可能通过检查引发碰撞例如您在写入文件时打开一个文件进行阅读。

在iOS/Android上,它应该可以很好地工作,因为它们基于unix,但在Windows上它可能很具有挑战性。内存受限设备中的大日志可能也会导致崩溃。


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)