我知道您可以在浏览器上或通过adb查看cordova应用程序的控制台。从已部署的Cordova应用程序访问console.log /错误
但我想要的是用户能够给我发送错误报告。在那个错误报告中,我希望那里的内容包括出现的console.error。
这有可能吗?
我知道您可以在浏览器上或通过adb查看cordova应用程序的控制台。从已部署的Cordova应用程序访问console.log /错误
但我想要的是用户能够给我发送错误报告。在那个错误报告中,我希望那里的内容包括出现的console.error。
这有可能吗?
您至少需要:
添加window.onerror
处理程序。它会被应用程序中的任何未处理的异常触发。 (尽管这对于发现的错误没有任何帮助。)有关更多信息,请参阅https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror。
添加一些发送错误报告的方法。您可以使用HTML和一些JavaScript(使用XHR)来完成此操作。确保你使用的后端是安全的。
一个更全面的选择会给你更多有用信息:
创建处理所有您的应用程序的日志记录需求的测井方法。它应该能够处理日志级别,如info
,warn
,error
等。日志记录方法应该保存最近的日志,以便它们可以包含在任何错误报告中。
注:你可能不希望保存一切,因为这可能会占用大量内存。您可能只想跟踪最近的100个左右的日志条目。
如果error
发生,让您的记录器要求用户使用报告方法发送错误报告(如上一节中所述)。由于您已经记录了额外的数据,因此您可以在此处添加更全面的关于应用程序发生情况的统计信息。
但是,最终,我会寻找一个错误处理和报告库,以便您不需要重新发明轮子。
注:在任何情况下,你应该小心您登录什么何处及如何发送数据。您不应该记录任何会危害隐私或安全性的内容(例如密码),并且您应该通过安全通道发送日志,并将日志安全地存储在后端。您应该提及您在隐私政策中如何存储和处理这些信息(包括收集哪些信息)。