diff --git a/wifi/java/android/net/wifi/WifiManager.java b/wifi/java/android/net/wifi/WifiManager.java index 9c8ea88c8c862..e9e20caa7dfe7 100644 --- a/wifi/java/android/net/wifi/WifiManager.java +++ b/wifi/java/android/net/wifi/WifiManager.java @@ -68,6 +68,7 @@ import java.util.concurrent.CountDownLatch; * leaks within the calling process. *

* It deals with several categories of items: + *

* + *

* This is the API to use when performing Wi-Fi specific operations. To perform * operations that pertain to network connectivity at an abstract level, use * {@link android.net.ConnectivityManager}. + *

*/ @SystemService(Context.WIFI_SERVICE) public class WifiManager { @@ -1556,7 +1559,21 @@ public class WifiManager { * Request a scan for access points. Returns immediately. The availability * of the results is made known later by means of an asynchronous event sent * on completion of the scan. - * @return {@code true} if the operation succeeded, i.e., the scan was initiated + *

+ * To initiate a Wi-Fi scan, declare the + * {@link android.Manifest.permission#CHANGE_WIFI_STATE} + * permission in the manifest, and perform these steps: + *

+ *
    + *
  1. Invoke the following method: + * {@code ((WifiManager) getSystemService(WIFI_SERVICE)).startScan()}
  2. + *
  3. + * Register a BroadcastReceiver to listen to + * {@code SCAN_RESULTS_AVAILABLE_ACTION}.
  4. + *
  5. When a broadcast is received, call: + * {@code ((WifiManager) getSystemService(WIFI_SERVICE)).getScanResults()}
  6. + *
+ * @return {@code true} if the operation succeeded, i.e., the scan was initiated. */ public boolean startScan() { return startScan(null);