连接wifi时启动3g

时间:2013-03-19 16:38:16

标签: android wifi 3g

我想在启用wifi时制作3g的作品!停一会儿wifi,连接3g。之后关闭3g并再次使用wifi!谢谢!

4 个答案:

答案 0 :(得分:0)

只是禁用Wi-Fi?这两个过程都是自动的:在启用时连接Wi-Fi网络,在没有Wi-Fi连接时连接3G。

答案 1 :(得分:0)

启用WiFi时,我认为无法切换到移动数据网络。 也许你应该默默地禁用WiFi(来自代码)并等待3G网络建立。完成所需任务后,再次打开WiFi,您的3G网络将断开连接。

答案 2 :(得分:0)

我认为以下内容应该有效......

WifiManager wm = null;
WifiManager.WifiLock wfl = null;

// To disable wi-fi
wm = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);
if (wm != null) {
    wfl = wm.createWifiLock(WifiManager.WIFI_MODE_SCAN_ONLY, "myWifiLock");
    Boolean result = wm.setWifiEnabled(false);
    Log.d(TAG, "wm.setWifiEnabled(false) result: " + result);
}

// To re-enable wi-fi
if (wfl != null)
    wfl.release();
if (wm != null) {
    Boolean result = wm.setWifiEnabled(true);
    Log.d(TAG, "wm.setWifiEnabled(true) result: " + result);
}

答案 3 :(得分:0)

这是一个可以启用和禁用代码内部的代码!

  wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);                   

              Runnable runnable = new Runnable() {

              // ginetai o kwdikas gia to anoigma kai to klisimo tou wifi   
                  @Override
                  public void run() {


                    //  new LongOperation().execute();
                    for (int i = 0; i <= 150; i++) {

                      try {

                        Thread.sleep(1000);

                        if (i >= 0 && i <18){

                            wifi.setWifiEnabled(true);
                        //  wifi.setWifiEnabled(false);// Disabling WiFi


                          }

                          else if (i>= 18 && i < 40){

                        wifi.setWifiEnabled(true); 
                      //    wifi.setWifiEnabled(false); // Enabling WiFi


                          }

                          else if (i>= 40 && i < 58){

                    //      wifi.setWifiEnabled(true); // Disabling WiFi
                        wifi.setWifiEnabled(false);

                          }

                          else if (i>= 58 && i < 78){

                            wifi.setWifiEnabled(true);
                        //wifi.setWifiEnabled(false); // Enabling WiFi


                          }

                          else{

                        //  wifi.setWifiEnabled(true);
                            wifi.setWifiEnabled(false);// Disabling WiFi


                          }

                      } catch (InterruptedException e) {
                        e.printStackTrace();
                      }


                    }
                  }
                };
                new Thread(runnable).start();