我想知道通过编码在黑莓中启用和禁用互联网连接的方法是什么。
修改
protected void disableConnection() {
activeConn = RadioInfo.getActiveWAFs();
if(activeConn == 0){
activeConn = RadioInfo.getEnabledWAFs();
}
mystore.setContents(new Integer(activeConn));
mystore.commit();
Radio.deactivateWAFs(activeConn);
Dialog.alert("Off internet");
}
protected void enableConnection() {
if(RadioInfo.getState() == RadioInfo.STATE_ON){
Dialog.alert("Internet on already");
}else if(mystore.getContents() != null){
if(Radio.activateWAFs(Integer.parseInt(mystore.getContents().toString())) == true){
Dialog.alert("On Internet");
}else{
Dialog.alert("Unable to on internet");
}
}else{
Dialog.alert("Unable to on internet");
}
}
这两种方法我打开电源并关闭按钮点击。
答案 0 :(得分:3)
您询问了互联网连接,因此我认为您不仅仅对Wi-Fi连接感兴趣。拨打Radio.deactivateWAFs(RadioInfo.WAF_WLAN);
只会禁用Wi-Fi。
更好的实施可能首先检查哪些无线电开启,然后关闭这些无线电。如果要再次启用服务,请重新激活已关闭的无线电。像这样:
/** we record which radios are active */
private int _activeWAFs = 0;
private void getActiveWAFs() {
_activeWAFs = RadioInfo.getActiveWAFs();
if (_activeWAFs == 0) {
_activeWAFs = RadioInfo.getEnabledWAFs();
}
}
/** turn radios off if they're currently on */
private void disableAll() {
getActiveWAFs();
Radio.deactivateWAFs(_activeWAFs);
}
/** turn radios on, if we turned them off with disableAll() */
private void enableAll() {
boolean success = Radio.activateWAFs(_activeWAFs) && (RadioInfo.getState() == RadioInfo.STATE_ON);
if (!success) {
// do something?
}
}
此外,如果您想要了解这些操作的结果或收音机的外部更改,您可以实施RadioStatusListener:
public void networkStarted(int networkId, int service) {
if (RadioInfo.getState() == RadioInfo.STATE_ON) {
// network ready to use!
}
}
而且,是,此通话会影响整个设备,而不仅仅是您应用的互联网连接。
答案 1 :(得分:2)
Radio.deactivateWAFS()将停用所有无线连接或仅停用互联网连接或蓝牙连接。
示例:无效WiFi连接。
Radio.deactivateWAFs(RadioInfo.WAF_WLAN);
答案 2 :(得分:2)
试试这个 -
这将打开wifi -
Radio.activateWAFs(RadioInfo.WAF_WLAN);
这将关闭wifi -
Radio.deactivateWAFs(RadioInfo.WAF_WLAN);