diff options
| -rw-r--r-- | api/system-current.txt | 2 | ||||
| -rw-r--r-- | wifi/java/android/net/wifi/WifiScanner.java | 28 |
2 files changed, 30 insertions, 0 deletions
diff --git a/api/system-current.txt b/api/system-current.txt index e2816b4dd8fa..0651c6170bd8 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -26819,7 +26819,9 @@ package android.net.wifi { method public void configureWifiChange(android.net.wifi.WifiScanner.WifiChangeSettings); method public boolean getScanResults(); method public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener); + method public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener, android.os.WorkSource); method public void startScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener); + method public void startScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener, android.os.WorkSource); method public void startTrackingBssids(android.net.wifi.WifiScanner.BssidInfo[], int, android.net.wifi.WifiScanner.BssidListener); method public void startTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener); method public void stopBackgroundScan(android.net.wifi.WifiScanner.ScanListener); diff --git a/wifi/java/android/net/wifi/WifiScanner.java b/wifi/java/android/net/wifi/WifiScanner.java index 508bdff19f9c..bd4220f79ec5 100644 --- a/wifi/java/android/net/wifi/WifiScanner.java +++ b/wifi/java/android/net/wifi/WifiScanner.java @@ -27,6 +27,7 @@ import android.os.Messenger; import android.os.Parcel; import android.os.Parcelable; import android.os.RemoteException; +import android.os.WorkSource; import android.util.Log; import android.util.SparseArray; @@ -661,12 +662,26 @@ public class WifiScanner { * scans should also not share this object. */ public void startBackgroundScan(ScanSettings settings, ScanListener listener) { + startBackgroundScan(settings, listener, null); + } + + /** start wifi scan in background + * @param settings specifies various parameters for the scan; for more information look at + * {@link ScanSettings} + * @param workSource WorkSource to blame for power usage + * @param listener specifies the object to report events to. This object is also treated as a + * key for this scan, and must also be specified to cancel the scan. Multiple + * scans should also not share this object. + */ + public void startBackgroundScan(ScanSettings settings, ScanListener listener, + WorkSource workSource) { Preconditions.checkNotNull(listener, "listener cannot be null"); int key = addListener(listener); if (key == INVALID_KEY) return; validateChannel(); sAsyncChannel.sendMessage(CMD_START_BACKGROUND_SCAN, 0, key, settings); } + /** * stop an ongoing wifi scan * @param listener specifies which scan to cancel; must be same object as passed in {@link @@ -698,6 +713,19 @@ public class WifiScanner { * scans should also not share this object. */ public void startScan(ScanSettings settings, ScanListener listener) { + startScan(settings, listener, null); + } + + /** + * starts a single scan and reports results asynchronously + * @param settings specifies various parameters for the scan; for more information look at + * {@link ScanSettings} + * @param workSource WorkSource to blame for power usage + * @param listener specifies the object to report events to. This object is also treated as a + * key for this scan, and must also be specified to cancel the scan. Multiple + * scans should also not share this object. + */ + public void startScan(ScanSettings settings, ScanListener listener, WorkSource workSource) { Preconditions.checkNotNull(listener, "listener cannot be null"); int key = addListener(listener); if (key == INVALID_KEY) return; |