在黑莓中禁用和启用互联网

时间:2012-06-26 07:14:57

标签: blackberry

我想知道通过编码在黑莓中启用和禁用互联网连接的方法是什么。

修改

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");
    }
}

这两种方法我打开电源并关闭按钮点击。

3 个答案:

答案 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);