Codenameone 将Log.p()和Log.e()生成的所有日志编码为字符串的一种可靠方法
在我的应用程序的开发阶段,我可以方便地将Codenameone 将Log.p()和Log.e()生成的所有日志编码为字符串的一种可靠方法,codenameone,Codenameone,在我的应用程序的开发阶段,我可以方便地将Log.p()和Log.e()生成的所有日志以字符串形式显示(例如,在对话框中显示它们,或通过电子邮件发送它们,方法与Log.sendLog()不同) 这就是我创建以下方法的原因。我的问题是它是否可靠,我是否没有复制已经存在的东西: /** * Get all logs of the app generated with Log.p() or Log.e() * @return All logs of the app generated with Lo
Log.p()
和Log.e()
生成的所有日志以字符串形式显示(例如,在对话框中显示它们,或通过电子邮件发送它们,方法与Log.sendLog()不同)
这就是我创建以下方法的原因。我的问题是它是否可靠,我是否没有复制已经存在的东西:
/**
* 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;
}
这种方法的主要问题是操作系统处理打开文件的各种方式,因此我将避免使用这种方式,因为它可能会通过检查触发崩溃,例如,在写入文件时打开文件进行读取 在iOS/Android上,这应该可以正常工作,因为它们是基于unix的,但在Windows上,这可能是一个挑战。内存受限的设备中的大型日志也可能导致崩溃