http - 在没有提供 BES 和 APN 的情况下,RIM 联盟合作伙伴计划是黑莓应用程序的唯一选择吗?

标签 http blackberry networking connection


我在这里,和我之前的许多人一样,在使用 BlackBerry 平台(在我的例子中是 4.6.1)时遇到 HttpConnection 问题。

我需要执行对 Web 服务的调用,并且在模拟器(使用 MDS 和 WiFi)中一切正常,但是当使用真实电话(8250)时,只有 WiFi 工作。

我的测试手机和意大利的许多手机一样,有 BIS 数据套餐,没有默认的 APN 配置。正如我所说,这是我所在国家/地区电话的一种非常常见的配置,因此我想在不强制用户指定任何连接参数的情况下解决问题。

我已经尝试使用 Connector.Create 方法的所有变体创建 HttpConnection:

  1. (HttpConnection)Connector.open(uri);//没有指定参数
  2. (HttpConnection)Connector.open(uri + ";deviceside=true");
  3. (HttpConnection)Connector.open(uri + ";deviceside=false");
  4. (HttpConnection)Connector.open(uri + ";interface=wifi");
  5. (HttpConnection)Connector.open(uri + ";deviceside=false;ConnectionUID=uid");

4,即 WiFi,是唯一适合我的方法。
13 提示缺少 APN 配置失败。
数字 2 失败,因为我没有连接到 BES 基础设施。
编号 5 失败,因为使用 BB documentation 中显示的代码检索到的 uid总是返回一个空值(可能是因为没有配置 WAP2?)

我没有测试 WAP1 解决方案,因为普通用户可能不知道配置它所需的参数。

我刚刚发现 "mds-public" 魔法字符串也可能会影响连接,但我仍然需要调查它的含义以及对我的运营商的影响。

最后,真正的问题是:您认为对我来说唯一的解决方案是请求访问 BIS-B 服务并成为联盟合作伙伴计划成员吗?你知道,如果没有必要,我想先确定一下,然后再要求我的老板付钱。

提前致谢,
亚历山德罗

最佳答案

我会推荐你​​使用这个

http://www.versatilemonkey.com/blog/index.php/2009/06/24/networking-helper-class/

我们在我们的项目中使用它,并进行了一些修改。

它会测试所有可用的传输方式并选择第一个有效的传输方式。

如果需要,您也可以实现自己的。

它目前正在加拿大和美国的所有运营商上进行生产。我希望它也能在欧盟发挥作用。

关于http - 在没有提供 BES 和 APN 的情况下,RIM 联盟合作伙伴计划是黑莓应用程序的唯一选择吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4082455/

相关文章:

JavaME Base64InputStream.decode() 字符串大小限制为 64k

javascript - 使用用户代理定位特定的黑莓手机

android - 在待机状态下拥有多个 UDP 数据报套接字有意义吗? "simultaneous"数据包是否被内核丢弃或排队?

networking - SSH 和 SSL 之间的差异,尤其是 "SFTP"与 "FTP over SSL"方面

java - 如何在Android中将2个TextView与if else条件放在同一位置

javascript - Node Js 中的 HTTP 请求

html - 浏览器如何检测 GIF 图像大小?

javascript - 黑莓浏览器 Javascript 时间 DST 问题

java - DefaultHttpClient GET 和 POST 命令 Java Android

javascript - 如何为 $http 请求添加进度条