从部署的Cordova应用程序访问console.log / error

时间:2017-03-04 16:50:47

标签: android cordova ionic-framework hybrid-mobile-app

我知道您可以在浏览器和adb上查看cordova应用程序的控制台。

但我想要的是让用户能够向我发送错误报告。在该错误报告中,我希望有内容包括出现的console.error。

这有可能吗?

1 个答案:

答案 0 :(得分:3)

至少你需要:

  • 添加window.onerror处理程序。它将由您的应用中的任何未处理的异常触发。 (但这对于捕获的错误没有任何作用。)有关详细信息,请参阅https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror

  • 添加一些发送错误报告的方法。您可以使用HTML和一些JavaScript(使用XHR)来完成此任务。确保您使用的后端受到保护。

更全面的选项可为您提供更多有用的信息:

  • 创建一个处理所有应用程序日志记录需求的日志记录方法。它应该能够处理日志级别,如infowarnerror等。日志记录方法应保存最近的日志,以便它们可以包含在任何错误报告中。

      

    注意:您可能不想保存所有内容,因为这可能会占用大量内存。您可能只想跟踪最近100个日志条目。

  • 如果出现error,请让您的记录器要求用户使用报告方法发送错误报告(如上一节所述)。由于您已经记录了其他数据,因此您可以更加全面地了解应用程序中发生的事情。

但最终,我会四处寻找错误处理和报告库,以便您不需要重新发明轮子。

  

注意:在所有情况下,您都应该小心您记录的内容以及发送数据的位置和方式。您不应记录任何会损害隐私或安全性的内容(例如密码),您应该通过安全通道发送日志并将日志安全地存储在后端。您应该在隐私政策中提及如何存储和处理这些信息(包括收集的信息)。