2

我正在运行最新版本的 android 和它的 SDK,我正在使用 phonegap 创建一个移动应用程序。我的问题是我正在请求 Web 服务,并且我在我的 html 的标签中显示接收到的消息的内容。Web 服务运行良好,显示功能运行良好,甚至可以在模拟器上运行,没有任何错误。当我尝试在真正的 android 设备上运行相同的应用程序和代码时,问题就出现了......没有任何反应。我正在测试的设备有 android 版本 2.3.1 和 4.0。我用来测试的模拟器是 2.2,android 项目是用 android sdk 2.2 版创建的。为了确保该问题与 android OS 版本无关,我还使用版本 4 创建了一个测试项目。

这是我的代码片段。

 var xhr = new XMLHttpRequest();
            xhr.open("GET", "http://feeds.delicious.com/v2/json/popular", false);
            xhr.send(null);
            if (xhr.readyState==4 && xhr.status==200){

                clearLoadingScreen();

                var popular= $("#disclaimer").html("");
                popular= "";

                $("#popular").append('<div class="popular"><p>Popular:</p>'+ "This is an example popular list<br />" + popular+ ' </div>'); 
           }

就像我说的,代码在模拟器上完美运行,当 index.html 页面加载时,我看到一个空白屏幕,几秒钟后填充。当我将代码移植到手机时,它不起作用。有谁知道为什么?

4

2 回答 2

1

检查 xhr.status==0 以及。有时从 file:// 协议运行时,您会得到状态 0。

于 2012-05-09T20:43:45.567 回答
1

Check your policy located in: project/res/xml/cordova.xml (if using Cordova - which is phonegap 1.6? or higher)

It's called phonegap.xml if on a lower version.

于 2012-05-11T02:12:07.577 回答