WifiManager manager = (WifiManager) context.getSystemService(WIFI_SERVICE);
setWifiApEnabled は private method なので、リフレクションを使って呼び出します。
Method method = manager.getClass().getMethod("setWifiApEnabled", WifiConfiguration.class, boolean.class);
method.setAccessible(true);
method.invoke(manager, null, true);
Wi-Fi テザリングが有効になったかどうかは isWifiApEnabled を使って調べますがこちらも private なのでリフレクションで。setAccessible は不要かもしれません。
Method method = manager.getClass().getMethod("isWifiApEnabled");
method.setAccessible(true);
boolean enabled = (Boolean) method.invoke(manager);
Manifest にパーミッションが必要なのでお忘れなく。
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
0 件のコメント:
コメントを投稿