Я знаю, как включить/выключить горячую точку Wi-Fi, используя отражение в андроиде, используя метод ниже.
private static boolean changeWifiHotspotState(Context context,boolean enable) {
try {
WifiManager manager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
Method method = manager.getClass().getDeclaredMethod("setWifiApEnabled", WifiConfiguration.class,
Boolean.TYPE);
method.setAccessible(true);
WifiConfiguration configuration = enable ? getWifiApConfiguration(manager) : null;
boolean isSuccess = (Boolean) method.invoke(manager, configuration, enable);
return isSuccess;
} catch (Exception e) {
e.printStackTrace();
}
return false;
}
Но вышеупомянутый метод не работает с Android 8.0 (Oreo).
Когда я выполняю выше метод в Android 8.0, я получаю ниже выражение в logcat.
com.gck.dummy W/WifiManager: com.gck.dummy attempted call to setWifiApEnabled: enabled = true
Есть ли другой способ включения/выключения hotspot на android 8.0