Включить / выключить USB или Wi-Fi модем программно на Android
Есть ли способ включить или отключить модем (USB или Wi-Fi) на телефоне Android программно? Возможно, API в Android SDK или NDK или любая другая команда, не связанная с пользовательским интерфейсом, чтобы сделать это.
Заранее спасибо.
2 ответа
Это возможно и без рут-доступа, я использую приведенный ниже код в моих приложениях:
private void setWifiTetheringEnabled(boolean enable) {
WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
Method[] methods = wifiManager.getClass().getDeclaredMethods();
for (Method method : methods) {
if (method.getName().equals("setWifiApEnabled")) {
try {
method.invoke(wifiManager, null, enable);
} catch (Exception ex) {
}
break;
}
}
}
Ваше приложение должно иметь следующее разрешение:
android.permission.CHANGE_WIFI_STATE
Посмотрите на этот вопрос.
По сути, нет никаких открытых API для этого. Взгляните на приложение настроек, чтобы увидеть, как это делают внутренние приложения. Может повезет с этим: