如何获得WiFi热点国家 [英] How to get wifi hotspot state

查看:168
本文介绍了如何获得WiFi热点国家的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我创造的 WiFi热点在我的手机,我想获得它的状态改变事件,当我打开或关闭热点。

I am creating wifi hotspot in my phone and I want get its state change event when I switched on or off hotspot.

推荐答案

请看看下面的code。这将帮助你。

Please look at the following code. This will help you

    public class WifiApManager {
          private final WifiManager mWifiManager;
          public WifiApManager(Context context) {
          mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
          }

     /*the following method is for getting the wifi hotspot state*/

    public WIFI_AP_STATE getWifiApState() {
      try {

        Method method = mWifiManager.getClass().getMethod("getWifiApState");

        int tmp = ((Integer) method.invoke(mWifiManager));

        // Fix for Android 4
        if (tmp > 10) {
            tmp = tmp - 10;
        }

        return WIFI_AP_STATE.class.getEnumConstants()[tmp];
    } catch (Exception e) {
        Log.e(this.getClass().toString(), "", e);
        return WIFI_AP_STATE.WIFI_AP_STATE_FAILED;
    }
}

 /**
 * Return whether Wi-Fi Hotspot is enabled or disabled.
 * 
 * @return {@code true} if Wi-Fi AP is enabled
 * @see #getWifiApState()
 */
     public boolean isWifiApEnabled() {
        return getWifiApState() == WIFI_AP_STATE.WIFI_AP_STATE_ENABLED;
     }

}

在哪里WIFI_AP_STATE是一个枚举类型,如下:

Where WIFI_AP_STATE is an enum which is as follows

  public enum WIFI_AP_STATE {
    WIFI_AP_STATE_DISABLING, WIFI_AP_STATE_DISABLED, WIFI_AP_STATE_ENABLING,  WIFI_AP_STATE_ENABLED, WIFI_AP_STATE_FAILED
             }

这篇关于如何获得WiFi热点国家的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆