【问题标题】:Access console.log/error from deployed Cordova app从已部署的 Cordova 应用程序访问 console.log/error
【发布时间】:2017-03-04 16:50:46
【问题描述】:

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

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

这可能吗?

【问题讨论】:

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


    【解决方案1】:

    您至少需要:

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

    • 添加一些发送错误报告的方法。您可以使用 HTML 和一点 JavaScript(使用 XHR)来完成此操作。确保您使用的后端是安全的。

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

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

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

    • 如果出现error,让您的记录器要求用户使用报告方法(如上一节中所述)发送错误报告。因为您已经记录了额外的数据,所以您可以更全面地记录应用程序中到目前为止发生的事情。

    不过,我最终还是会寻找一个错误处理和报告库,这样您就不需要重新发明轮子了。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-14
      • 1970-01-01
      • 2022-01-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多