25

我正在尝试在 Xcode 上使用 phonegap 开发一个基本的 hello world 应用程序。但我在 Xcode 控制台上看不到日志消息。我已经尝试过console.logdebug.log但它们对我不起作用?

如何在 xcode 控制台上查看 javascript 日志消息?

4

10 回答 10

27

在 Phonegap 3.0 中,您必须为 console.log 添加一个插件才能在 xcode 控制台中工作。

$ phonegap local plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-console.git

更多信息:http ://docs.phonegap.com/en/edge/guide_cli_index.md.html#The%20Command-line%20Interface

于 2013-08-23T19:07:46.757 回答
10
  1. 在您真正的 iDevice 或 iOS 模拟器中,转到Settings > Safari > Advanced并打开Web Inspector.
  2. 桌面 Safari: Safari > Preferences > Advanced并选中该Show develop menu in menu bar复选框。
  3. 现在您已经打开了 iOS 模拟器或者您的 iDevice 已连接到您的 Mac,开始在您的网站上使用 Web 检查器:在您的 Mac 上,打开 Safari 并转到Develop
于 2013-10-02T20:02:55.810 回答
8

Phonegap 在这里有一篇关于此的非常好的博客文章。

他们提到的其中一件事包括我个人使用相当数量的JSLint 。您只需在此处发布您的 JS 代码,它就会扫描错误和良好的样式。我还建议尝试将代码放在一个简单的 html 文件中并在浏览器上运行它。任何可能看起来与电话有关的东西,只要摆脱它。在浏览器端对您的 javascript 进行沙箱处理,然后使用 Firebug 或 Chrome 的调试器之类的东西,这很好。(我也肯定console.log()会在那里工作:D)

我也看到很多人提到,包括在博客文章中,关于Weinre,所以这是值得一试的。

其他可能有帮助的相关问题:

Phonegap - Xcode 中的 Javascript 调试

iOS PhoneGap 调试工作流程

如何在 Xcode 中查看 PhoneGap 应用程序的 javascript 错误?

希望这可以帮助。

编辑:最近发现了这个:在 Phonegap 中调试

于 2012-11-13T09:13:26.967 回答
4

console.log("msg here: "+var);应该管用。它将显示为...[INFO] msg here: hi!(在日期、时间、应用程序等之后)。

要查看消息,请转到查看 > 调试区域 > 激活控制台(或 shift+cmd+C)

于 2012-11-13T09:13:25.533 回答
2

正如@NickBreen 所说,您必须添加正确的插件,但我们还需要在控制台显示日志语句之前等待deviceready事件触发。

于 2013-11-29T00:50:51.187 回答
2

在更高版本的 phonegap/cordova 中,在项目中添加调试控制台插件:

科尔多瓦插件添加 org.apache.cordova.console

于 2014-08-12T12:07:22.570 回答
0

就我而言,我只需要在 cordova.js 中注释以下几行:

if(typeof window.console === "undefined") { window.console = { log:function(){} };

于 2013-09-11T14:18:57.657 回答
0
  1. 添加调试控制台插件
  2. 在示例 phonegap 代码或之后运行的代码中的 onDeviceReady 中添加一条 console.log 消息。

重要提示:控制台消息在“deviceready”事件之后显示。Console.log在此之前不会生成消息。

于 2013-11-06T21:13:47.203 回答
0

问题

通过命令行界面将控制台插件添加到 ios 平台(或重新安装后)时,会出现以下或类似的错误消息:

“CDVPlugin 类 CDVLogger (pluginName: Console) 不存在。”

解决方案

打开您的 Xcode 项目并转到“构建阶段”选项卡。现在打开名为“Compile Sources”的下拉菜单。单击列表末尾的“+”号并添加“CDVLogger.m”或任何其他缺少的源。

于 2013-12-28T06:01:53.137 回答
-1
confirm("msg here: "+var);

或者

console.log("msg here: "+var);
于 2012-11-13T09:25:16.190 回答