在blackberry上使用3g时出现连接问题

在blackberry上使用3g时出现连接问题,blackberry,connection,Blackberry,Connection,我正在创建一个blackberry应用程序,它正在从Web服务下载数据, 我使用以下代码来获取连接 public静态字符串getConnectionString() { 字符串连接字符串=null; if(DeviceInfo.isSimulator()) { connectionString=“;deviceside=true”; } else if(WLANInfo.getWLANState()==WLANInfo.WLAN\u STATE\u CONNECTED) { connection

我正在创建一个blackberry应用程序,它正在从Web服务下载数据, 我使用以下代码来获取连接

public静态字符串getConnectionString()
{
字符串连接字符串=null;
if(DeviceInfo.isSimulator())
{
connectionString=“;deviceside=true”;
}
else if(WLANInfo.getWLANState()==WLANInfo.WLAN\u STATE\u CONNECTED)
{
connectionString=“;接口=wifi”;
}
else if((CoverageInfo.getcoveragentatus()&CoverageInfo.COVERAGE\u DIRECT)==CoverageInfo.COVERAGE\u DIRECT)
{
//日志信息(“承运商覆盖范围”);
字符串carrierUid=getCarrierBIBSUid();
if(carrierUid==null)
{
//有运营商的覆盖范围,但没有BIB。所以使用运营商的TCP网络
//日志消息(“无Uid”);
connectionString=“;deviceside=true”;
}
其他的
{
//否则,使用Uid构造有效的承运人BIBS请求
//日志消息(“uid为:+carrierUid”);
connectionString=“;deviceside=false;connectionUID=“+carrierUid+”;ConnectionType=mds public”;
}
}
//改为检查MDS连接(BlackBerry Enterprise Server)
else if((CoverageInfo.getcoveragentatus()&CoverageInfo.COVERAGE\u MDS)==CoverageInfo.COVERAGE\u MDS)
{
//日志消息(“发现MDS覆盖范围”);
connectionString=“;deviceside=false”;
}        
//如果没有可用的连接,请中止以避免不必要地窃听用户。
else if(CoverageInfo.getcoveragentatus()==CoverageInfo.COVERAGE\u NONE)
{
//日志消息(“没有可用的连接”);
}        
//理论上,所有的基础都被覆盖了,所以这是不可能实现的。
其他的
{
//logMessage(“未找到其他选项,假设为设备”);
connectionString=“;deviceside=true”;
}
返回连接字符串;
}
但它在Wifi上工作,但在我使用3G时不工作,
请告诉我还应该使用什么

我看不到运营商UID获取代码。但实际上,BIS-B连接不需要它。“deviceside=false;ConnectionType=mds public”应该足够了

此外,与BIS-B相关的代码位于直接TCP部分内。您应该使用
CoverageInfo.COVERAGE\u BIS\u B
而不是
CoverageInfo.COVERAGE\u DIRECT