我在iPhone上做了一些粗略的开发。我正在编写一个原生的iPhone应用程序,它使用UIWebView对象来加载带有javascript的网站。我发现在iPhone上调试javascript代码非常困难。 有什么方法/技术可用于此事?
答案 0 :(得分:3)
由于iPhone上的Safari正在使用webkit,因此您可以使用桌面Safari的Web检查器中内置的调试器。虽然平台之间可能存在一些不同的怪癖,但它会让您非常了解解释器中发生的事情。
答案 1 :(得分:3)
如果您可以访问Android手机,则可以使用桌面Chrome的完整开发人员工具和USB连接线(非常方便)调试您的应用程序。
这意味着调试器,分析器,HTML检查器等都在您的手机上运行,但通过笔记本电脑/台式电脑上运行的chrome进行访问。
Android Chrome和iPhone Mobile Safari通常比Desktop Safari更相似于Mobile Safari,屏幕格式类似,布局相似,您将能够尝试真正的触摸事件等。< / p>https://developers.google.com/chrome/mobile/docs/debugging
它需要Chrome,能够运行Android Chrome应用的Android设备和USB线。
您必须安装并使用ADB控制台命令,但一旦工作,您将拥有可用于调试移动设备的完整Chrome开发人员工具界面。
答案 2 :(得分:2)
与Adrian Harris类似,可以通过在dashcode中创建虚拟项目,点击“Mobile Safari”然后“Run”
来调试iphone上的任何网站。一旦iPhone模拟器打开并使用虚拟项目网站打开safari,单击safari的url栏,输入任何公共URL,当您在站点时,可以单击“暂停”,调试器将弹出任何JavaScript代码运行后。此时,可以检查变量,设置断点等。
答案 3 :(得分:1)
我知道这是一个老问题,但想用最新信息更新答案 - &gt;
如果您拥有最新的软件(safari,iOS6和MacOS)以及附带的(使用有线电视)iDevice,新的safari(适用于mac)可以实时在实际的iphone或ipad上使用Web检查器
您可以通过在iphone上的“高级”safari首选项中启用它,然后在Mac上的safari中的开发菜单下启用它。有关详细信息,请参阅此处:http://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariWebContent/DebuggingSafarioniPhoneContent/DebuggingSafarioniPhoneContent.html#//apple_ref/doc/uid/TP40006515
您也可以以相同的方式访问模拟器(使用xCode安装)。
答案 4 :(得分:0)
我同意pjbeardsley。我会在http://www.testiphone.com/中添加使用您的网页,这样您就可以看到尺寸会是什么样的。我肯定会使用Safari和Web Inspector
答案 5 :(得分:0)
我使用Dashcode获得了不同的成功,Dashcode有一个与iPhone模拟器配对的javascript调试器。开始工作有点棘手,因为如果不打开项目就无法启动它。但我记得,我在网上发布了该项目,启动了占位符项目,然后在Dashcode中调试了占位符项目。然后我在模拟器中导航到我的网址,并能够设置断点。可能还有其他一些可以跳过的箍,但是一旦它工作,就像我在Mobile Safari中有一个真正的调试器,这很棒。
祝你好运