在Android平板电脑/手机上调试javascript?

时间:2011-04-19 22:03:38

标签: javascript android ios debugging console

如何在iOS上的Safari中启用调试视图?我只需要查看我正在测试页面的Xoom是否会生成javascript错误。我试图找到如何在Android浏览器中启用开发工具,就像我为iOS做的那样,但似乎找不到它。

7 个答案:

答案 0 :(得分:14)

我曾经在一个Android应用程序上工作,java开发人员将其设置为警告JavaScript错误 - 抓住了一个额外的错误,因为它在iOS版本中没有捕获。所以,如果你有权访问java层,我会检查出来。我问他具体做了什么,他说: “有一个来自WebView类的回调让我知道JS代码何时抛出错误。我实现了该回调以显示一个android对话框。”

除此之外还有两个解决方案,我用于调试(ios / android)。这些对于您无法访问内置控制台的游戏中的嵌入式Web视图特别有用:

1)Weinre一个仍在测试但功能正常的远程调试器。它会在桌面上为您提供一个虚拟检查器,您可以查询/查看远程设备上的错误。有一个完整的dom检查员和任何东西。开发它的人也非常敏感。

2)我写了一个javascript日志函数,它命中了我的服务器错误日志。只需拖尾您的日志文件就可以了。我的javascript函数看起来像这样:

function hlog(){
    var s = Array.prototype.slice.apply(arguments).join('¶');
    document.createElement('img').src = 'http://yourdevbox/debugger/?m=' + encodeURIComponent(s);
}

这样我可以采取任何数量的论点。 收到此请求的我的php页面如下所示:

# ensure this can't be used in production 
if (strpos($GLOBALS['HTTP_HOST'], 'devboxhostname') < 0) die(':(');
error_log($_GET['m']);

希望将来,移动开发人员将拥有更好的调试工具。

答案 1 :(得分:5)

Android(目前)没有像Chrome / Chromium那样的WebInspector。

您仍然可以查看在logcat中window.console下触发的任何console.log()消息。

来源:http://developer.android.com/guide/webapps/debugging.html

此外,虽然Firefox 4适用于Android,但浏览器的移动版本目前不支持Firebug。

答案 2 :(得分:5)

在url字段中键入 about:debug 并进行验证,然后可以使用javascript控制台(删除它的方法相同)

此页面上的更多内容:https://android.stackexchange.com/questions/5999/android-browsers-aboutdebug-what-do-those-settings-do

答案 3 :(得分:2)

您可以做的最好的事情是使用console.log()(如firebug),然后在手机上安装日志查看器,根据browser进行过滤,您可以看到所有console消息。 (source

答案 4 :(得分:1)

Opera mobile有远程调试: http://dev.opera.com/articles/view/remote-debugging-with-opera-dragonfly/

Android默认似乎没有调试器,尽管您可以在PC上调试chrome / chromium,它使用相同的webkit渲染。 (甚至有一个模拟Android选项,但它没有Android平板电脑的所有怪癖,图像/内存限制等。)

Firebug Lite也是一种可能性: http://getfirebug.com/firebuglite

答案 5 :(得分:1)

尝试 Weinre: Web Inspector Remote / Watch demo

“Weinre是一个网页调试器,如FireBug(用于FireFox)和Web Inspector(用于基于WebKit的浏览器),除了它旨在远程工作,特别是允许您在移动设备上调试网页比如电话。“

您可以查看其他一些远程调试工具: jsconsole 或 的阿德沃夫

答案 6 :(得分:1)

您无需安装任何软件或尝试在小巧的移动屏幕上进行调试。 首先在“开发人员设置”中启用设备中的USB调试,然后使用桌面镶边连接并调试移动浏览器。

我发现最简单的方法是在手机/平板电脑上启用USB调试,在桌面上启用chrome to

chrome://inspect/#devices

启用发现USB设备,然后在应用列表中点击“检查”

瞧!远程调试!现在,您可以在舒适的桌面上调试手机