首页 > 解决方案 > Android TV 模拟器上的网络连接设置

问题描述

我想关闭 Android TV 模拟器上的网络连接。

我发现:设置 -> 网络 -> Wifi 开/关,但我的模拟器设备仍然有互联网。是否有一些快捷方式(iMac)或简单的终端命令会禁用网络?

跑步./adb shell am broadcast -a给了我这个信息L

android.intent.action.WIFI_OFF
Broadcasting: Intent { act=android.intent.action.WIFI_OFF }
Broadcast completed: result=0

但是我的模拟器上仍然有网络连接。

标签: androidandroid-emulator

解决方案


如果它是根设备,则使用以下代码禁用网络

try {
Runtime.getRuntime().exec("su -c svc data disable");
} catch (IOException e) {
Log.d("Error", e.getMessage());
}

再次想要启用只需将禁用更改为启用

在清单文件中

<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>

或者

WifiManager wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE); 
wifiManager.setWifiEnabled(true);
wifiManager.setWifiEnabled(false);

使用下面的一个来检查是否启用

boolean wifiEnabled = wifiManager.isWifiEnabled()

清单中的权限

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

推荐阅读