如何在Android浏览器上像在iOS的Safari浏览器中那样启用调试视图?我只需要查看我正在测试页面的Xoom是否生成JavaScript错误。我试图找到类似于iOS中启用开发工具的方法,但似乎无法找到。
如何在Android浏览器上像在iOS的Safari浏览器中那样启用调试视图?我只需要查看我正在测试页面的Xoom是否生成JavaScript错误。我试图找到类似于iOS中启用开发工具的方法,但似乎无法找到。
我曾经参与过一个Android应用程序的开发,在这个项目中,Java开发人员设置了警报JavaScript错误的功能,这让我们在iOS版本中没有发现的一个额外的bug被捕捉到了。所以,如果你可以访问Java层,那么我建议你去检查一下。我询问了他具体做了什么,他说:
"WebView类有一个回调函数,可以让我知道JS代码何时抛出错误。我实现了这个回调函数来显示一个Android对话框。"
除此之外,我还使用了另外两种解决方案来进行调试(iOS / Android),这些方法特别适用于嵌入游戏中的Web视图,因为你无法访问内置控制台:
1)Weinre是一个尚处于测试阶段但功能正常的远程调试工具。它会在你的桌面上提供一个虚拟的检查器,你可以查询/查看远程设备上的错误信息,包括DOM检查器和其他任何内容。该工具的开发人员非常负责。
2)我编写了一个JavaScript日志函数,将错误记录在我的服务器错误日志中。只需使用tail命令跟踪你的日志文件即可。我的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']);
Android目前还没有像Chrome/Chromium那样的WebInspector。
您仍然可以在logcat中查看通过window.console
触发的任何console.log()消息。
来源:http://developer.android.com/guide/webapps/debugging.html
此外,虽然Firefox 4可用于Android,但Firebug当前不支持移动版浏览器。
在地址栏输入about:debug并验证,就可以打开JavaScript控制台(删除方法同理)。
更多关于此页面的信息请访问:https://android.stackexchange.com/questions/5999/android-browsers-aboutdebug-what-do-those-settings-do
最好的方法是使用console.log()
(像firebug一样),然后在手机上安装一个日志查看器,根据browser
进行过滤,这样就可以看到所有的console
消息。(来源)
您不需要安装任何软件或在手机屏幕上尝试调试。首先在您的设备中的“开发者选项”中启用USB调试,然后使用您的桌面Chrome来连接和调试移动浏览器。
我发现最简单的方法是在手机/平板电脑上启用USB调试,然后在桌面上使用Chrome浏览器导航到
chrome://inspect/#devices
启用发现USB设备,然后在应用列表中点击“检查”
哇!远程调试!现在您可以在桌面舒适地调试您的手机。
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
尝试使用Weinre:Web Inspector Remote / 观看演示
"Weinre是一个用于网页调试的工具,类似于FireBug(适用于FireFox)和Web Inspector(适用于基于WebKit的浏览器),但它被设计为远程工作,并且特别适用于允许您在移动设备上调试网页,例如手机。"
您可以查看一些其他远程调试工具:jsconsole或Aardwolf