java - 从后台任务将日志保存到文件系统
问题描述
我想将日志系统添加到将调试/事件日志写入文本文件的 android 应用程序中。用户必须能够打开和关闭它。
我的应用程序使用了一些“背景技术”,例如使事情复杂化的 AlarmManagers 和 Homescreen Widgets。
我想我必须编写打开/关闭日志记录到文件的变量,并在每次事件调用 log 方法时检查它。
这似乎非常浪费,尤其是在关闭日志记录的情况下。将变量设为静态可以防止它在一段时间内(但不会很长时间)被垃圾收集,并且也有点浪费。如果它不在后台任务中,我也担心泄漏上下文或读/写/共享首选项崩溃。
我该如何以不同的方式解决这个问题?
一些伪代码:
logToFile("some error", Context context)
logtoFile (String error, Context context){
if(context.checkSharedPreferencesIfLoggingIsEnabled){
context.openFileOutput.write(error)
}
}
解决方案
推荐阅读
- wordpress - 子目录 wordpress 上的 Wordpress 永久链接问题
- reactjs - 带有 url 参数的嵌套路由在 react-router-dom 中不起作用
- java - 如何在调用其 write() 方法之前获取 SXSSFWorkbook 的大小?
- mysql - 使用 hibernate、SpringBoot、MySql 和 JSP 的 Spring-boot 应用程序
- c++ - 使用 C++ 读取具有两个连续分隔符的 csv 文件
- cors - Ionic v4 withCredentials true 给我 cors 错误
- java - 在Java中使用父类名存储时如何返回继承的对象
- mysql - 从表中检索信息 SELECET
- mysql - 从选择/联合构建表
- go - 如何创建一个包罗万象的 Go 环境以满足提出的要求:“应用程序必须在共享服务器上编译”