gpt4 book ai didi

javascript - 如何在运行时获取所有控制台消息以登录 Cordova iOS?

转载 作者:行者123 更新时间:2023-11-30 07:51:23 27 4
gpt4 key购买 nike

当我在 iOS 上的 Cordova 下运行我的 WKWebview 应用程序时,我使用 console.debugconsole.info 登录我的 Web 应用程序的消息没有输出到Xcode 控制台或我的日志中。但是,console.log 消息正在 得到输出。我怎样才能输出我所有的日志消息?

最佳答案

经过大量研究和审查 cordova.js来源,我意识到我的 console.info 的原因未记录消息是因为 Cordova 在 iOS 下运行时覆盖了控制台对象。默认情况下,只有 console.log消息,console.error , 和 console.warn消息被输出。这是因为 Cordova 记录器支持以下日志级别:

  • 日志
  • 错误
  • 警告 <-- DEFAULT LEVEL
  • 信息
  • 调试

WARN 是默认的日志级别。这意味着只有在 WARN 级别和更高级别记录的消息才会被输出,因此 console.warn , console.errorconsole.log消息只会被输出。要更改日志级别,您需要执行以下操作:

1) 与您使用 Cordova exec 的方式类似通过加载其模块来实现功能,您还需要在 javascript 中加载 Cordova 记录器模块。要加载记录器模块,请将其添加到您的 javascript 中:

var logger = require('cordova/plugin/ios/logger');

2) 接下来,为了将默认日志记录级别从 WARN 更改为另一个级别(例如 DEBUG),您需要做的就是在初始化的适当位置添加以下调用代码。插入此代码的位置取决于您的应用程序,但上面的 logger您在上面第 1 步中声明的模块需要在范围内。

logger.level('DEBUG');

您可以使用的级别如上所述:'LOG', 'ERROR', 'WARN', 'INFO', 'DEBUG'

或者,您还应该能够使用 Cordova 日志记录模块定义的级别常量:logger.LOG, logger.ERROR, logger.WARN, logger.INFO, logger.DEBUG .我没试过这个,但它应该有用。

希望这有助于在将来为其他人节省一些时间,因为我找不到任何相关文档。

关于javascript - 如何在运行时获取所有控制台消息以登录 Cordova iOS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52386509/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com