2013-01-21 49 views
1

我决定尝试使用Weinre来帮助我调试我正在尝试为Windows Phone 8构建的Cordova应用程序;不幸的是,我遇到了一个奇怪的问题,Windows Phone 8模拟器可以连接到我的本地Weinre配置,然后几秒钟后消失...我在另一个Windows 2012上尝试了这一点,我似乎遇到了同样的事情。我甚至尝试了一个基地科尔多瓦模板。Weinre与Windows Phone 8连接丢失?

因此,当我从VS2012调试我的应用程序时,模拟器启动并且应用程序部署。我知道我无法使用LOCALHOST,因此我的脚本引用是指我的计算机或服务器的IP地址。应用程序启动后,我可以去Weinre控制台,我发现我有一个连接。但几秒钟后,连接消失。似乎仿真器不能保持与weinre的连接...仿真器上是否有某种带宽限制器会削减我的连接?是否有更好的方法远程调试我应该使用的Win Phone 8应用程序?

更新:我也试过这个从我的诺基亚920,我看到了同样的事情发生......

+0

喜道尔,你看到的Node.js服务器(在命令行窗口)上的任何错误? –

回答

1

UPDARE

Weinre打补丁,现在应该正常运行的。我建议从NPM https://npmjs.org/package/weinre

npm install -g weinre 
weinre --boundHost -all- 

原来的答案

看来科尔多瓦具体XHR patch休息weinre逻辑尝试最新的版本。我在目标脚本中看到js错误。

我添加了一个快速解决weinre目标的script.js,所以你可以用下面的文件替换\目标\目标的script.js(或目标脚本min.js),它应该工作

http://dl.dropbox.com/u/23085338/weinre-target-script-min-patched.js

重要。只需添加到您的网页

<script type="text/javascript"> 
window.WeinreServerId = "wp_test"; // <-- your unique identifier on the server below 
window.WeinreServerURL = "http://debug.phonegap.com"; // <-- weinre server to use 

// To open debugger use the following uri format - WeinreServerURL/client/#WeinreServerId 
// for example http://debug.phonegap.com/client/#wp_test 

</script> 

<script type="text/javascript" src="http://dl.dropbox.com/u/23085338/weinre-target-script-min.js"></script> 

对于 - Weinre JS必须cordova.js

但我会建议以下超简单的方法来weinre连接到你的页面W/O所需要的任何地方安装前加入一般故障排除见Windows Phone 8 IE10 Javascript debugging

UPDATE

另一个速战速决,应该工作是替换(在目标脚本min.js或目标的script.js)

xhr = new XMLHttpRequest(); 

xhr = (XMLHttpRequest.noConflict ? new XMLHttpRequest.noConflict() : new XMLHttpRequest()); 
+0

谢谢谢尔盖。我一直在分心另一个项目,并没有意识到你已经回答了这个问题!今晚我会试试这个! – dchin

+0

我认为Weinre已修补,所以最新版本应该可以正常工作。所以我建议你试试看 –