Android日志&;报告生成
在Android应用程序中,生成用户稍后可以查看的报告的最佳策略是什么?我说的是应用程序的正常运行,不一定是错误和异常 我有几个选择,但每个选择似乎都有问题:Android日志&;报告生成,android,logging,reporting,Android,Logging,Reporting,在Android应用程序中,生成用户稍后可以查看的报告的最佳策略是什么?我说的是应用程序的正常运行,不一定是错误和异常 我有几个选择,但每个选择似乎都有问题: Logcat(使用特定的标记“MyAppsLog”,为用户提供读取使用该标记记录的所有语句的功能) 注意:我相信Logcat的主要目的是为开发人员提供调试信息,而不是为最终用户 手动打开一个平面文件,并将日志语句附加到该文件中。 注意:如果没有用于日志记录和报告生成的标准机制,则可以使用此方法。因为这是一个标准要求,我不希望重新发明轮子。
注意:我相信Logcat的主要目的是为开发人员提供调试信息,而不是为最终用户
注意:如果没有用于日志记录和报告生成的标准机制,则可以使用此方法。因为这是一个标准要求,我不希望重新发明轮子。此外,如果重新安装应用程序,文件可能会丢失。如果写入SD卡/外部存储器以避免这种可能性,则可能不是私有的
注意:我认为这些工具的用途是崩溃报告,我不认为它们是标准报告生成的最佳选择
许多企业应用程序需要有一种方法来生成报告(应用程序正常运行,而不是错误),企业用户可以稍后查看。我希望这里的答案对更多的人有用,而不仅仅是我。那么,使用SQLite数据库并将日志数据转储到表中怎么样?我认为这比平面文件选项要好。您甚至可以聚合转储的数据或对其进行查询。那么使用SQLite数据库并将日志数据转储到表中如何?我认为这比平面文件选项要好。您甚至可以聚合转储的数据或对其进行查询。Sqlite很重,占用大量内存和进程 平面锉刀的优点:
Sqlite很重,占用大量内存和进程 平面锉刀的优点:
谢谢你的回答。我很想知道为什么你认为数据库比平面文件更好(因为大多数日志和报告都是平面文件)?我确实理解,如果我们要从相同的数据生成不同格式的复杂报告,那么使用DB是有意义的。但是对于简单的日志文件,这种复杂性值得吗?这取决于您希望如何使用收集的数据。如果您不想对日志进行任何复杂的处理,那么将它们转储到文件中当然可以。谢谢您的回答。我很想知道为什么你认为数据库比平面文件更好(因为大多数日志和报告都是平面文件)?我确实理解,如果我们要从相同的数据生成不同格式的复杂报告,那么使用DB是有意义的。但是对于简单的日志文件,这种复杂性值得吗?这取决于您希望如何使用收集的数据。如果您不想对日志执行任何复杂的操作,那么将它们转储到文件中当然可以。