【问题标题】:Best way to debug Javascript on an iPhone app?在 iPhone 应用程序上调试 Javascript 的最佳方法是什么?
【发布时间】:2009-06-09 12:11:31
【问题描述】:

我正在 iPhone 上进行一些粗略的开发。我正在编写一个原生 iPhone 应用程序,它使用 UIWebView 对象来加载带有 javascript 的网站。我发现很难在 iPhone 上调试 javascript 代码。 有哪些方法/技术可以解决这个问题?

【问题讨论】:

    标签: javascript iphone debugging


    【解决方案1】:

    由于 iPhone 上的 Safari 使用 webkit,您可以使用桌面 Safari 的 web 检查器中内置的调试器。虽然平台之间可能会有一些不同的怪癖,但它会让您对解释器中发生的事情有一个很好的了解。

    【讨论】:

    • 我同意。但是,如果您的应用程序在 Safari 中运行良好,但在 iOS 模拟器中停滞不前怎么办?哪一款更能代表iPhone/iPad手机浏览器?
    【解决方案2】:

    如果您可以使用 Android 手机,则可以使用桌面 Chrome 的完整开发人员工具和 USB 数据线调试您的应用程序(非常方便)。

    这意味着调试器、分析器、HTML 检查器等都在您的手机上运行,​​但通过在您的笔记本电脑/台式计算机上运行的 chrome 访问。

    Android Chrome 和 iPhone Mobile Safari 通常比 Desktop Safari 与 Mobile Safari 更相似,屏幕格式相似,布局相似,您将能够尝试真实的触摸事件等。

    https://developers.google.com/chrome/mobile/docs/debugging

    需要 Chrome、能够运行 Android Chrome 应用的 Android 设备和 USB 数据线。

    您必须安装和使用 ADB 控制台命令,但一旦它工作,您将拥有可用于调试移动设备的完整 chrome 开发人员工具界面。

    【讨论】:

      【解决方案3】:

      与 Adrian Harris 类似,可以通过在 dashcode 中创建一个虚拟项目,点击“Mobile Safari”然后“运行”来调试 iphone 上的任何网站

      一旦iPhone Simulator 和safari 与虚拟项目网站一起打开,点击safari 的url 栏,输入任意公共url,当你在该站点时,你可以点击“Pause”,调试器会弹出在任何 javascript 代码运行之后。此时可以检查变量、设置断点等。

      【讨论】:

        【解决方案4】:

        我知道这是一个老问题,但想用最新信息更新答案 ->

        如果您拥有最新的软件(safari、iOS6 和 MacOS)和连接的(带电缆)iDevice,新的 safari(适用于 mac)可以在实际的 iphone 或 ipad 上实时使用网络检查器.

        您可以通过在 iphone 上的“高级”Safari 偏好设置中启用它,然后在 Mac 上的 Safari 中的开发菜单下启用它来访问它。更多信息请看这里:http://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariWebContent/DebuggingSafarioniPhoneContent/DebuggingSafarioniPhoneContent.html#//apple_ref/doc/uid/TP40006515

        您也可以以相同的方式访问模拟器(使用 xCode 安装)。

        【讨论】:

          【解决方案5】:

          我同意 pjbeardsley 的观点。我会添加在http://www.testiphone.com/ 中使用您的网页,这样您就可以看到尺寸会是什么样子。我肯定也会为此使用 Safari 和 Web Inspector

          【讨论】:

            【解决方案6】:

            我使用 Dashcode 取得了不同程度的成功,它有一个与 iPhone 模拟器配对的 javascript 调试器。开始工作有点棘手,因为如果不打开项目就无法启动它。但我记得,我在网上发布了项目,启动了占位符项目,然后在 Dashcode 中调试了占位符项目。然后我在模拟器中导航到我的 url 并能够设置断点。可能还有其他一些问题需要跳过,但是一旦它开始工作,就好像我在 Mobile Safari 中有一个真正的调试器,这很棒。

            祝你好运

            【讨论】:

              猜你喜欢
              • 2010-10-14
              • 2010-09-08
              • 2014-07-18
              • 1970-01-01
              • 2011-08-12
              • 2011-06-05
              • 1970-01-01
              • 2010-09-19
              • 1970-01-01
              相关资源
              最近更新 更多