在 iOS 上调试 Cordova (PhoneGap) 代码

Posted

技术标签:

【中文标题】在 iOS 上调试 Cordova (PhoneGap) 代码【英文标题】:Debugging Cordova (PhoneGap) code on iOS 【发布时间】:2012-05-28 16:34:50 【问题描述】:

我正在开发一个我想通过 Cordova (PhoneGap) 在 ios 中托管的应用程序。当我尝试访问 device.platform 和 device.version 属性时遇到了一些问题。我不确定问题是什么。无论哪种方式,我都无法弄清楚如何查看代码以更好地了解正在发生的事情。

我以为我可以在桌面版 Safari 中启动 .html,但是,这并没有提供任何见解。简而言之:

    如何调试在 Cordova 内部运行的代码? 知道为什么我不能只执行“alert(device.platform);”吗?

谢谢!

【问题讨论】:

【参考方案1】:

从 iOS 6 开始,您只需在 Safari 中启用“开发”菜单并使用Safari Web Inspector 在 iOS 模拟器或 USB 连接设备中远程调试 Cordova 应用程序。如果您使用过 Chrome 的调试器,您会感到宾至如归。

【讨论】:

最近 SWI 在任何断点处崩溃,Xcode 抛出“不允许在 web 线程上使用多个锁!请提交错误。”【参考方案2】:

除了 Weinre,还有 iWebInspector,它在 ios 上很有用,也许更好。 http://www.mobilexweb.com/blog/debugging-web-safari-phonegap-iphone-ipad

我认为它可能只适用于模拟器,但无论如何对于大多数情况来说都很好。在我看来,它更像是 Xcode 和 iOs 调试解决方案。

【讨论】:

【参考方案3】:

    I use nifty debugging tool called Weinre,这是调试 cordova(phonegap) 应用程序时的救星。它基本上是一个远程调试工具,类似于 Chrome 和其他一些浏览器中可用的常用 webkit 开发工具。

    确保在尝试调用 device.platform 之前已加载 Cordova。触发 deviceready js 事件时加载 Cordova。

【讨论】:

以上是关于在 iOS 上调试 Cordova (PhoneGap) 代码的主要内容,如果未能解决你的问题,请参考以下文章

Cordova:无论如何,是不是可以在 Javascript 中检测 iOS 应用程序是作为调试版还是作为发布版构建的?

iOS 9 Ionic Cordova 应用程序在 iPhone 上崩溃;在 iPad 上工作

在 IOS 上调试 Ionic 应用程序?

调试 Cordova 插件

如何在 Phonegap 和 Cordova 构建的混合应用程序上测试调试(Cpu 和 FPS)使用情况

为啥在 Visual Studio 2017 中调试 Cordova 应用程序时 DOM Explorer 总是为空?