如何确定BlackBerry设备是否具有Bis-B访问权限?

时间:2011-06-23 00:35:24

标签: blackberry

我有一个BlackBerry应用程序,可以通过访问各种网络资源来执行各种任务。我对应用程序有一个新要求,其中一个任务必须通过Bis-B连接到Internet,如果设备无法执行Bis-B,则应用程序不应允许用户执行任务第一名。

通过Bis-B连接的方法是将其附加到您尝试访问的URL:

;deviceside=false;ConnectionType=mds-public

对于Bis-B上的设备,此URL后缀有效,连接通过Bis-B进行。

我遇到的问题是使用不在Bis-B上的设备。我曾假设,如果我将上述内容添加到URL然后尝试连接,则尝试将失败(然后我可以捕获它并使用它来确定设备不在Bis-B上)。不幸的是,实际发生的是前一次或两次尝试成功,但第二次或第三次尝试失败,并且“无法检测到网络。请稍后再试”。发生这种情况后,所有后续网络请求都会失败并显示相同的消息,即使是使用Bis-B URL后缀的调用也是如此。 10-15分钟后,似乎有些东西被清除,然后所有非Bis-B网络请求再次开始工作。

所以我很自然地感到困惑,我正在寻找一些方法来可靠地检测设备是否在Bis-B上。我知道设备本身可以分辨,因为如果设备在Bis-B上,BB屏幕右上角的wifi图标是亮白色,而当它不是时,BB屏幕右上角是wifi。

1 个答案:

答案 0 :(得分:2)

  

我正在寻找一些方法来可靠地检测设备是否在Bis-B上。我知道设备本身可以分辨,因为如果设备在Bis-B上,BB屏幕右上角的wifi图标是亮白色,而当它不是时,BB屏幕右上角是wifi。

我发现黑莓点表明你是否在BIS上。如果BIS通过蜂窝网络路由,它们将出现在3g /边缘指示符旁边,如果BIS通过wifi路由,它们将出现在wifi指示符旁边。

  

我正在寻找一些方法来可靠地检测设备是否在Bis-B上。

CoverageInfo。getCoverageStatus()返回一个位域,其中一个位是CoverageInfo.COVERAGE_BIS_B。我的理解是这个位对应于出现在主屏幕的连接状态区域中的黑莓点。