web-dev-qa-db-ja.com

ADB経由でWifiをオフにする方法は?

私はwifi通話のテスト手順を自動化していますが、adb経由でwifiをオフ/オンにする方法はありますか?

Wifiを無効/有効にするか、wifi呼び出し(com.movi​​al.wificall)を終了して再起動します。

これをすべてadbおよびShellコマンドを介して行うことは可能ですか?

これまでのところ、私は見つけた:

Android.net.wifi.WifiManager
setWifiEnabled(true/false)

どうやって組み合わせるかわからない

46
Nefariis

ADBを介して「svc」を使用(ルート化が必要):

Enable:

adb Shell su -c 'svc wifi enable'

無効:

adb Shell su -c 'svc wifi disable'

ADBを介したキーイベントの使用:

adb Shell am start -a Android.intent.action.MAIN -n com.Android.settings/.wifi.WifiSettings
adb Shell input keyevent 20 & adb Shell input keyevent 23

最初の行は、WiFi設定ページを開く「wifi.WifiSettings」アクティビティを起動します。 2行目はキーの押下をシミュレートします。

これらの2行をDroid Xでテストしました。ただし、上記のキーイベントは、おそらく設定レイアウトが異なるため、他のデバイスで編集する必要があります。

「キーイベント」に関する詳細情報 こちら

92
Jared Burrows

ブルートゥースのオン/オフを切り替えるために同じものを探していましたが、これが見つかりました:

adb Shell svc wifi enable|disable
45
Berkk

非ルートデバイスでwifiを切り替える簡単な方法は、シンプルなアプリを使用することです。

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        WifiManager wfm = (WifiManager) getSystemService(Context.WIFI_SERVICE);
        try {
            wfm.setWifiEnabled(Boolean.parseBoolean(getIntent().getStringExtra("wifi")));
        } catch (Exception e) {
        }
        System.exit(0);
    }
}

AndroidManifest.xml:

<uses-permission Android:name="Android.permission.CHANGE_WIFI_STATE" />

ADBコマンド:

$ adb Shell am start -n org.mytools.config/.MainActivity -e wifi true
$ adb Shell am start -n org.mytools.config/.MainActivity -e wifi false
24
Ruslan
  1. 場所に移動Android/android-sdk/platform-tools
  2. shift+右クリック
  3. ここでcmdを開き、次のコマンドを入力します

    1. adb Shell
    2. su
    3. svc wifi enable/disable
  4. 完了!!!!!

5
Musab
adb Shell "svc wifi enable"

これは機能し、関連オプションを開かずにバックグラウンドでアクションを実行します!!

4
Arun

私はこのコマンドをテストしました:

adb Shell am start -a Android.intent.action.MAIN -n com.Android.settings/.wifi.WifiSettings
adb Shell input keyevent 19 & adb Shell input keyevent 19 & adb Shell input keyevent 23

そして、おそらくいくつかのドライバーのために、ウィンドウのプロンプトでのみ動作します

adb Shell svc wifi enable|disable私はルート権限でのみ動作すると思います

3
Igor Maia Romcy

私にできること:

settings put global wifi_on 0
settings put global wifi_scan_always_enabled 0

時々、ブート中に行うと(つまり、 このようなブートループ を修正するために)、うまく適用されず、先に機内モードを有効にすることもできます:

settings put global airplane_mode_on 1
settings put global wifi_on 0
settings put global wifi_scan_always_enabled 0

他のオプションはこれを強制することです:

while true; do settings put global wifi_on 0; done

テスト済みAndroid 7 on LG G5(SE)with(rooted)stock mod。

0
Treviño

引用符で使用

例:adb Shell "svc wifi enable"

これは動作します:)

0
SanalBathery