开发者社区 问答 正文

日志日志没有显示在Xcode调试记录器中,也没有显示在Safari调试记录器上

我在Cordova/www下创建了index.html文件。通过IOS模拟器运行它,只需这样做:

<!DOCTYPE html> <html> <head>   <title>Title</title> </head> <body>

    <h1>Hello World1</h1>
    <h2>Test this out</h2>
    <h2 id="test"></h2>

    <script>
      console.log("Test")
      document.getElementById("test").innerHTML = "text string"
    </script>

</html>

HTML输出在模拟器中显示,

还填充了“文本字符串”字符串--意味着启用了JS。

但是,console.log("Test")不会出现在任何地方--不是在Xcode调试上,也不是在我从Safari运行的Debug中。

如何解决这个问题

展开
收起
游客5akardh5cojhg 2019-12-16 22:27:07 587 分享 版权
阿里云 AI 助理回答

在Cordova应用中使用JavaScript的console.log时,有时可能不会直接在Xcode的控制台或者通过Safari调试工具看到输出。这是因为Cordova应用在iOS模拟器或真实设备上运行时,其JavaScript日志处理方式与原生iOS应用有所不同。

要解决这个问题并查看console.log输出,请按照以下步骤操作:

  1. 使用Safari开发者工具:

    • 确保你的iOS模拟器正在运行,并且Cordova应用已经启动。
    • 打开Safari浏览器,在顶部菜单选择“开发”菜单项(如果看不到“开发”菜单,需要在Safari的偏好设置中启用“显示开发菜单”)。
    • 在“开发”菜单下,你应该能看到你的模拟器名称以及其中运行的Web应用(通常以localhost开头,后面跟着一个端口号)。点击你的应用名称。
    • 这时,Safari会打开一个新的开发者工具窗口,你可以在这里看到Console标签页。console.log的输出应该会显示在这里。
  2. 确保Cordova插件配置正确:

    • Cordova默认应该支持console.log输出到Safari调试工具。但如果你发现仍然无法看到日志,检查你的Cordova项目是否包含了正确的WebView插件,尤其是对于较旧版本的Cordova,可能需要手动添加对cordova-plugin-console的支持。不过,自Cordova 5.0.0起,此插件已包含在核心之中,一般无需单独安装。
  3. 检查Cordova项目的config.xml:

    • 确认<allow-navigation>标签允许了调试连接。例如:
      <allow-navigation href="http://*/*" />
      <allow-navigation href="https://*/*" />
      
    • 虽然这通常不是console.log不显示的直接原因,但确保网络访问权限正确配置有助于避免其他潜在问题。
  4. 重启模拟器和应用:

    • 有时候,简单地重启模拟器和重新运行Cordova应用就能解决这类问题。
  5. 更新Cordova和相关插件:

    • 确保你的Cordova及其所有插件都是最新版本。有时候,过时的软件会导致一些预期之外的行为。

如果以上步骤都尝试过了,但问题依旧存在,可能需要更详细地检查你的Cordova项目配置或考虑是否有特定于你应用环境的问题。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答