我有以下代码:

HttpConnection httpCon = null;
InputStream fileIn = null;
try
{
     httpCon = (HttpConnection) Connector.open(url + getConnectionSuffix(), Connector.READ);
     httpCon.setRequestMethod(HttpConnection.GET);
    }
    catch (Exception e)
    {
      .......
    }
  .............




private String getConnectionSuffix()
{
    String connSuffix = "";
    if (DeviceInfo.isSimulator())
    {
        connSuffix = ";deviceside=true";
    }
    else if ( (WLANInfo.getWLANState() == WLANInfo.WLAN_STATE_CONNECTED) &&
          RadioInfo.areWAFsSupported(RadioInfo.WAF_WLAN))
    {
        connSuffix=";interface=wifi";
    }
    else
    {
        String uid = null;
        ServiceBook sb = ServiceBook.getSB();
        ServiceRecord[] records = sb.findRecordsByCid("WPTCP");
        for (int i = 0; i < records.length; i++)
        {
            if (records[i].isValid() && !records[i].isDisabled())
            {
                if (records[i].getUid() != null &&
                    records[i].getUid().length() != 0)
                {
                    if ((records[i].getCid().toLowerCase().indexOf("wptcp") != -1) &&
                        (records[i].getUid().toLowerCase().indexOf("wifi") == -1) &&
                        (records[i].getUid().toLowerCase().indexOf("mms") == -1))
                    {
                        uid = records[i].getUid();
                        break;
                    }
                }
            }
        }
        if (uid != null) {
            // WAP2 Connection
             connSuffix = ";ConnectionUID="+uid;
        } else {
             connSuffix = ";deviceside=true";
        }
    }
    return connSuffix;
}


但是,互联网并非总能正常工作。在3G上无法正常使用(其他应用,例如exp:浏览器运行良好)。怎么了?

最佳答案

在获取服务手册之前,请尝试通过BIS连接(如果启用了Blackberry选项,则可以使用):

如果(((CoverageInfo.getCoverageStatus()&CoverageInfo.COVERAGE_BIS_B)== CoverageInfo.COVERAGE_BIS_B){
connSuffix =“; deviceside = false; ConnectionType = mds-public”;
}

10-05 21:30