9

重複の可能性:
WiFiテザリング状態を検出する方法

アプリを使用して、デバイスでホットスポットがオンになっているかどうかを確認する必要がありますか?

4

1 に答える 1

15

コード: Java

Method method = wifiManager.getClass().getDeclaredMethod("getWifiApState");
method.setAccessible(true);
int actualState = (Integer) method.invoke(wifiManager, (Object[]) null);

コード: コトリン

    fun getHotspotState(): String {
    val wifiManager =
        applicationContext.getSystemService(Context.WIFI_SERVICE) as WifiManager
    val method: Method = wifiManager.javaClass.getMethod(
        "getWifiApState"
    )
    method.isAccessible = true
    val invoke = method.invoke(wifiManager)
    println(invoke)
    return invoke.toString();
}

実際の状態は次のようになります。

public static int AP_STATE_DISABLING = 10;
public static int AP_STATE_DISABLED = 11;
public static int AP_STATE_ENABLING = 12;
public static int AP_STATE_ENABLED = 13;
public static int AP_STATE_FAILED = 14;

WifiManger ソースコード

これがあなたを助けることを願っています!

于 2013-01-18T18:32:15.893 に答える