Android Wifi开发——热点扫描(五)

        在开启 WiFi 后,一般会通过监听 CONFIGURED_NETWORKS_CHANGED_ACTION 网络变化广播,在 WiFi 状态为 WifiManager.WIFI_STATE_ENABLED 时,开始扫描。

1、APP开始扫描

WifiManager mWifiManager; 
     
//取得WifiManager对象  
mWifiManager=(WifiManager) context.getSystemService(Context.WIFI_SERVICE);  
//开始扫描WiFi
mWifiManager.startScan(); 

2、源码分析

WifiManager.startScan()

源码位置:/packages/modules/Wifi/framework/java/android/net/wifi/WifiManager.java

/**
 * 请求对接入点进行扫描
 * 要启动Wi-Fi扫描,需要{android.Manifest.permission#CHANGE_WIFI_STATE} 权限
 * 注册一个BroadcastReceiver来监听 {SCAN_RESULTS_AVAILABLE_ACTION} 获取扫描结果
 * 当收到广播时:调用 {((WifiManager) getSystemService(WIFI_SERVICE)).getScanResults()} 获取结果
 * @return true 如果操作成功,即启动扫描。
 * @deprecated 在未来的版本中,应用程序触发扫描请求的功能将被移除。
 */
@Deprecated
public boolean startScan() {
    return startScan(null);
}

    

猜你喜欢

转载自blog.csdn.net/c19344881x/article/details/129447298