Подтвердить что ты не робот

Как программно обнаруживать доступность мобильных точек доступа в Android?

Я надеюсь, что сам заголовок говорит, что мой вопрос...

Например, мы можем проверить доступность Wifi с помощью PackageManager, например

packageManager.hasSystemFeature(PackageManager.FEATURE_WIFI);

Аналогичным образом можно каким-либо образом обнаруживать доступность мобильных точек доступа в Android программно?

Спасибо.

4b9b3361

Ответ 1

я просмотрел документацию по Google и обнаружил, что если Wi-Fi P2P поддерживается устройством, то его очевидно, что он поддерживает wifi hotspot

чтобы проверить Wi-Fi Direct/wifi P2P на устройстве, затем проверьте этот способ

PackageManager m = getPackageManager();
     if (!m.hasSystemFeature(PackageManager.FEATURE_WIFI_DIRECT)) {
            // This device does support wifi P2P
        }

но google говорит, что лучше проверить эту поддержку в своем широковещательном приемнике таким образом

@Override
public void onReceive(Context context, Intent intent) {
    ...
    String action = intent.getAction();
    if (WifiP2pManager.WIFI_P2P_STATE_CHANGED_ACTION.equals(action)) {
        int state = intent.getIntExtra(WifiP2pManager.EXTRA_WIFI_STATE, -1);
        if (state == WifiP2pManager.WIFI_P2P_STATE_ENABLED) {
            // Wifi P2P is enabled
        } else {
            // Wi-Fi P2P is not enabled
        }
    }
    ...
}

проверить документацию Google для тех же

Ответ 3

Вы можете проверить это, вызвав это: ConnectivityManager.isActiveNetworkMetered()

Это вернет текущее активное соединение в Wifi Hotspot или нет.

Я думаю, что это немного полезно для вас.

Ответ 4

Вы можете получить доступ к этой информации, вызвав ConnectivityManager.isActiveNetworkMetered().

Это вернет, является ли активное соединение точкой доступа (как определено в разделе "Использование данных" → "Мобильные горячие точки" ).

Вот хороший ответ на подобный вопрос!!! Как определить, настроена ли в сети мобильная точка доступа на Android?