我正在尝试从黑莓代码中获取一些Web服务。继承人我正在使用的代码
public void execute(int method)
{
HttpConnection connection = null;
try
{
switch(method)
{
case GET:
{
String combinedParams = "";
if(!params.isEmpty())
{
combinedParams += "?";
for(int i=0;i<params.size();i++)
{
String[] nameValue = SplitString.split(params.elementAt(i).toString(), ",");
String paramString = nameValue[0] + "=" + nameValue[1];
if(combinedParams.length() > 1)
{
combinedParams += "&" + paramString;
}
else
{
combinedParams += paramString;
}
}
}
if(combinedParams.equals(""))
{
System.err.println("URL = "+url);
connection = (HttpConnection)Connector.open(url);
}
else
{
connection = (HttpConnection)Connector.open(url+combinedParams);
}
connection.setRequestMethod(HttpConnection.GET);
executeRequest(connection);
break;
}
case POST:
{
connection = (HttpConnection)Connector.open(url);
connection.setRequestMethod(HttpConnection.POST);
for(int i=0;i<headers.size();i++)
{
String[] nameValue = SplitString.split(params.elementAt(i).toString(), ",");
connection.setRequestProperty(nameValue[0], nameValue[1]);
}
if(getData()!= null)
{
OutputStream os = connection.openOutputStream();
os.write(getData().toString().getBytes());
os.flush();
}
executeRequest(connection);
break;
}
}
}
catch(Exception e)
{
System.err.println(e.getMessage());
e.printStackTrace();
}
}
我一跑这条线
connection = (HttpConnection)Connector.open(url);
我收到错误必需的广播未激活
我的设备中没有任何SIM卡,但我连接到wifi,我可以从浏览器访问其他网页。
出现此错误的可能原因是什么?
在我的情况下,我尝试了这个link并且 RadioInfo.getState()已关闭。
由于
答案 0 :(得分:1)
来自连接器上的docs:
Wi-Fi支持
可以通过设置接口参数来建立Wi-Fi连接。这仅适用于直接TCP / UDP连接。
接口:如果
interface=wifi
参数附加到URI字符串值的末尾,则会打开Wi-Fi套接字连接。
这意味着您必须检测收音机是否已关闭,如果是,您可以通过向网址添加interface=wifi
来尝试使用Wi-Fi。正确的网址为:http://www.google.com;interface=wifi