微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

AJAX XML无法在带有Web-Works或Phonegap的BlackBerry上运行

我已经构建了一个应用程序,它从Web上的外部xml文件加载统计信息.

它在Web浏览器中工作正常.当我使用PhoneGap for Android打包它时,它也可以正常工作.适用于BlackBerry Playbook.

但是,当我将其打包为BlackBerry时,它不起作用.我已经尝试过WebWorks命令行工具和PhoneGap.

当我使用WebWorks打包并在模拟器上运行时

Web Inspector上的控制台给出了错误

“无法加载资源:服务器响应状态为500(请求资源时出错.)”

当我使用Phonegap打包并在模拟器上运行时

当我使用PhoneGap而不是WebWorks打包时,我会在警报中弹出以下错误

gap : ["Network Status","getConnectionInfo","Network Status0",true]

gap: ["Device","getDeviceInfo","Device1",true]

gap_init:

gap_callbackServer:

gap_poll:

Live version of App(未编译)

ZIP file to run in WebWorks or Phonegap

similar unanswered question.

Youtube Video of Problem in BlackBerry Simulator

我试过的事情

我已添加配置文件中.

<access subdomains="false" uri="*"/>

添加了$.support.cors函数suggested by phonegap.

$( document ).bind( "mobileinit",function() {
    // Make your jQuery Mobile framework configuration changes here!
    $.mobile.allowCrossDomainPages = true;
});

解决方法

您的模拟器和WebWorks SDK是最新的吗?

我已经在2.0.1.358的现场PlayBook和2.0.0.7971的模拟器上进行了测试,没有任何问题我可以看到.

我打包了2.2.0.15 WebWorks for PlayBook SDK,我唯一改变的是config.xml中的id,这是带有点的打包器中没有接受的.

好的,现在我明白了问题所在.

它非常模糊,但Java智能手机SIM卡设置为与另一个名为mds Simulator的旧模拟器工具一起使用.对于大多数事情来说,这并不是必需的,但提供类似于设备在企业BES环境中看到的网络.即使mds模拟器没有运行,模拟器也认为它始终具有所谓的“mds”连接.

使用WebWorks应用程序,如果您使用认的config.xml文件,但没有< rim:connection> tag(对于大多数情况来说完全没问题),它在TCP选项之前优先​​考虑mds.这是一个问题,因为sim认为它实际上没有mds连接,并且连接尝试最终失败.

如果将以下位代码添加到config.xml中,它将降低mds的优先级,并使其正常工作.

<rim:connection timeout="60000">
    <id>BIS-B</id>
    <id>TCP_WIFI</id>
    <id>TCP_CELLULAR</id>
    <id>mds</id>
    <id>WAP2</id>
    <id>WAP</id>
</rim:connection>

最后一个关键项目 – 您需要设置模拟器以使用模拟的wifi网络.单击主屏幕的顶部横幅(通过无线指示灯),然后打开Wifi,并在选项和状态中单击Wi-Fi网络.然后单击认WLAN网络并完成相关步骤.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐