Loading api/current.txt +0 −80 Original line number Diff line number Diff line Loading @@ -17293,86 +17293,6 @@ package android.net.wifi { method public abstract void onStartSuccess(java.lang.String); } public class WifiScanner { method public void configureWifiChange(int, int, int, int, int, android.net.wifi.WifiScanner.HotspotInfo[]); method public void resetHotlist(android.net.wifi.WifiScanner.HotlistListener); method public void retrieveScanResults(boolean, android.net.wifi.WifiScanner.ScanListener); method public void setHotlist(android.net.wifi.WifiScanner.HotspotInfo[], int, android.net.wifi.WifiScanner.HotlistListener); method public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener); method public void startTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener); method public void stopBackgroundScan(android.net.wifi.WifiScanner.ScanListener); method public void stopTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener); field public static final int MAX_SCAN_PERIOD_MS = 1024000; // 0xfa000 field public static final int MIN_SCAN_PERIOD_MS = 2000; // 0x7d0 field public static final int REASON_CONFLICTING_REQUEST = -4; // 0xfffffffc field public static final int REASON_INVALID_LISTENER = -2; // 0xfffffffe field public static final int REASON_INVALID_REQUEST = -3; // 0xfffffffd field public static final int REASON_SUCCEEDED = 0; // 0x0 field public static final int REASON_UNSPECIFIED = -1; // 0xffffffff field public static final int REPORT_EVENT_AFTER_BUFFER_FULL = 0; // 0x0 field public static final int REPORT_EVENT_AFTER_EACH_SCAN = 1; // 0x1 field public static final int REPORT_EVENT_FULL_SCAN_RESULT = 2; // 0x2 field public static final int WIFI_BAND_24_GHZ = 1; // 0x1 field public static final int WIFI_BAND_5_GHZ = 2; // 0x2 field public static final int WIFI_BAND_5_GHZ_DFS_ONLY = 4; // 0x4 field public static final int WIFI_BAND_5_GHZ_WITH_DFS = 6; // 0x6 field public static final int WIFI_BAND_BOTH = 3; // 0x3 field public static final int WIFI_BAND_BOTH_WITH_DFS = 7; // 0x7 field public static final int WIFI_BAND_UNSPECIFIED = 0; // 0x0 } public static class WifiScanner.ChannelSpec { ctor public WifiScanner.ChannelSpec(int); field public int frequency; } public static class WifiScanner.FullScanResult implements android.os.Parcelable { ctor public WifiScanner.FullScanResult(); method public int describeContents(); method public void writeToParcel(android.os.Parcel, int); field public android.net.wifi.WifiScanner.InformationElement[] informationElements; field public android.net.wifi.ScanResult result; } public static abstract interface WifiScanner.HotlistListener { method public abstract void onFound(android.net.wifi.ScanResult[]); } public static class WifiScanner.HotspotInfo { ctor public WifiScanner.HotspotInfo(); field public java.lang.String bssid; field public int frequencyHint; field public int high; field public int low; } public static class WifiScanner.InformationElement { ctor public WifiScanner.InformationElement(); field public byte[] bytes; field public int id; } public static abstract interface WifiScanner.ScanListener { method public abstract void onFullResult(android.net.wifi.WifiScanner.FullScanResult); method public abstract void onPeriodChanged(int); method public abstract void onResults(android.net.wifi.ScanResult[]); } public static class WifiScanner.ScanSettings implements android.os.Parcelable { ctor public WifiScanner.ScanSettings(); method public int describeContents(); method public void writeToParcel(android.os.Parcel, int); field public int band; field public android.net.wifi.WifiScanner.ChannelSpec[] channels; field public int periodInMs; field public int reportEvents; } public static abstract interface WifiScanner.WifiChangeListener { method public abstract void onChanging(android.net.wifi.ScanResult[]); method public abstract void onQuiescence(android.net.wifi.ScanResult[]); } public class WpsInfo implements android.os.Parcelable { ctor public WpsInfo(); ctor public WpsInfo(android.net.wifi.WpsInfo); wifi/java/android/net/wifi/ScanResult.java +34 −1 Original line number Diff line number Diff line Loading @@ -90,6 +90,19 @@ public class ScanResult implements Parcelable { */ public final static int UNSPECIFIED = -1; /** information element from beacon * @hide */ public static class InformationElement { public int id; public byte[] bytes; } /** information elements found in the beacon * @hide */ public InformationElement informationElements[]; /** {@hide} */ public ScanResult(WifiSsid wifiSsid, String BSSID, String caps, int level, int frequency, long tsf) { Loading Loading @@ -199,6 +212,16 @@ public class ScanResult implements Parcelable { } else { dest.writeInt(0); } if (informationElements != null) { dest.writeInt(informationElements.length); for (int i = 0; i < informationElements.length; i++) { dest.writeInt(informationElements[i].id); dest.writeInt(informationElements[i].bytes.length); dest.writeByteArray(informationElements[i].bytes); } } else { dest.writeInt(0); } } /** Implement the Parcelable interface {@hide} */ Loading @@ -223,6 +246,17 @@ public class ScanResult implements Parcelable { if (in.readInt() == 1) { sr.passpoint = WifiPasspointInfo.CREATOR.createFromParcel(in); } int n = in.readInt(); if (n != 0) { sr.informationElements = new InformationElement[n]; for (int i = 0; i < n; i++) { sr.informationElements[i] = new InformationElement(); sr.informationElements[i].id = in.readInt(); int len = in.readInt(); sr.informationElements[i].bytes = new byte[len]; in.readByteArray(sr.informationElements[i].bytes); } } return sr; } Loading @@ -230,5 +264,4 @@ public class ScanResult implements Parcelable { return new ScanResult[size]; } }; } wifi/java/android/net/wifi/WifiScanner.java +18 −72 Original line number Diff line number Diff line Loading @@ -40,6 +40,7 @@ import java.util.concurrent.CountDownLatch; * Get an instance of this class by calling * {@link android.content.Context#getSystemService(String) Context.getSystemService(Context * .WIFI_SCANNING_SERVICE)}. * @hide */ public class WifiScanner { Loading Loading @@ -72,16 +73,14 @@ public class WifiScanner { public static final int REASON_INVALID_LISTENER = -2; /** Invalid request */ public static final int REASON_INVALID_REQUEST = -3; /** Request conflicts with other scans that may be going on */ public static final int REASON_CONFLICTING_REQUEST = -4; /** * Generic action callback invocation interface * @hide */ public static interface ActionListener { public void onSuccess(Object result); public void onFailure(int reason, Object exception); public void onSuccess(); public void onFailure(int reason, String description); } /** Loading Loading @@ -193,58 +192,6 @@ public class WifiScanner { } /** information element from beacon */ public static class InformationElement { public int id; public byte[] bytes; } /** scan result with information elements from beacons */ public static class FullScanResult implements Parcelable { public ScanResult result; public InformationElement informationElements[]; /** Implement the Parcelable interface {@hide} */ public int describeContents() { return 0; } /** Implement the Parcelable interface {@hide} */ public void writeToParcel(Parcel dest, int flags) { result.writeToParcel(dest, flags); dest.writeInt(informationElements.length); for (int i = 0; i < informationElements.length; i++) { dest.writeInt(informationElements[i].id); dest.writeInt(informationElements[i].bytes.length); dest.writeByteArray(informationElements[i].bytes); } } /** Implement the Parcelable interface {@hide} */ public static final Creator<FullScanResult> CREATOR = new Creator<FullScanResult>() { public FullScanResult createFromParcel(Parcel in) { FullScanResult result = new FullScanResult(); result.result = ScanResult.CREATOR.createFromParcel(in); int n = in.readInt(); result.informationElements = new InformationElement[n]; for (int i = 0; i < n; i++) { result.informationElements[i] = new InformationElement(); result.informationElements[i].id = in.readInt(); int len = in.readInt(); result.informationElements[i].bytes = new byte[len]; in.readByteArray(result.informationElements[i].bytes); } return result; } public FullScanResult[] newArray(int size) { return new FullScanResult[size]; } }; } /** @hide */ public static class ParcelableScanResults implements Parcelable { public ScanResult mResults[]; Loading Loading @@ -305,7 +252,7 @@ public class WifiScanner { /** * reports full scan result for each access point found in scan */ public void onFullResult(FullScanResult fullScanResult); public void onFullResult(ScanResult fullScanResult); } /** @hide */ Loading Loading @@ -336,13 +283,12 @@ public class WifiScanner { } /** * retrieves currently available scan results * @param flush {@code true} means flush all results * @param listener specifies which scan to cancel; must be same object as passed in {@link * #startBackgroundScan} */ public void retrieveScanResults(boolean flush, ScanListener listener) { public ScanResult[] getScanResults() { validateChannel(); sAsyncChannel.sendMessage(CMD_GET_SCAN_RESULTS, 0, getListenerKey(listener)); Message reply = sAsyncChannel.sendMessageSynchronously(CMD_GET_SCAN_RESULTS, 0); ScanResult[] results = (ScanResult[]) reply.obj; return results; } /** specifies information about an access point of interest */ Loading Loading @@ -490,7 +436,7 @@ public class WifiScanner { } /** interface to receive hotlist events on; use this on {@link #setHotlist} */ public static interface HotlistListener extends ActionListener { public static interface HotspotListener extends ActionListener { /** indicates that access points were found by on going scans * @param results list of scan results, one for each access point visible currently */ Loading Loading @@ -550,10 +496,10 @@ public class WifiScanner { * @param hotspots access points of interest * @param apLostThreshold number of scans needed to indicate that AP is lost * @param listener object provided to report events on; this object must be unique and must * also be provided on {@link #resetHotlist} * also be provided on {@link #stopTrackingHotspots} */ public void setHotlist(HotspotInfo[] hotspots, int apLostThreshold, HotlistListener listener) { public void startTrackingHotspots(HotspotInfo[] hotspots, int apLostThreshold, HotspotListener listener) { validateChannel(); HotlistSettings settings = new HotlistSettings(); settings.hotspotInfos = hotspots; Loading @@ -562,9 +508,9 @@ public class WifiScanner { /** * remove tracking of interesting access points * @param listener same object provided in {@link #setHotlist} * @param listener same object provided in {@link #startTrackingHotspots} */ public void resetHotlist(HotlistListener listener) { public void stopTrackingHotspots(HotspotListener listener) { validateChannel(); sAsyncChannel.sendMessage(CMD_RESET_HOTLIST, 0, removeListener(listener)); } Loading Loading @@ -769,10 +715,10 @@ public class WifiScanner { switch (msg.what) { /* ActionListeners grouped together */ case CMD_OP_SUCCEEDED : ((ActionListener) listener).onSuccess(msg.obj); ((ActionListener) listener).onSuccess(); break; case CMD_OP_FAILED : ((ActionListener) listener).onFailure(msg.arg1, msg.obj); ((ActionListener) listener).onFailure(msg.arg1, (String)msg.obj); removeListener(msg.arg2); break; case CMD_SCAN_RESULT : Loading @@ -780,14 +726,14 @@ public class WifiScanner { ((ParcelableScanResults) msg.obj).getResults()); return; case CMD_FULL_SCAN_RESULT : FullScanResult result = (FullScanResult) msg.obj; ScanResult result = (ScanResult) msg.obj; ((ScanListener) listener).onFullResult(result); return; case CMD_PERIOD_CHANGED: ((ScanListener) listener).onPeriodChanged(msg.arg1); return; case CMD_AP_FOUND: ((HotlistListener) listener).onFound( ((HotspotListener) listener).onFound( ((ParcelableScanResults) msg.obj).getResults()); return; case CMD_WIFI_CHANGE_DETECTED: Loading Loading
api/current.txt +0 −80 Original line number Diff line number Diff line Loading @@ -17293,86 +17293,6 @@ package android.net.wifi { method public abstract void onStartSuccess(java.lang.String); } public class WifiScanner { method public void configureWifiChange(int, int, int, int, int, android.net.wifi.WifiScanner.HotspotInfo[]); method public void resetHotlist(android.net.wifi.WifiScanner.HotlistListener); method public void retrieveScanResults(boolean, android.net.wifi.WifiScanner.ScanListener); method public void setHotlist(android.net.wifi.WifiScanner.HotspotInfo[], int, android.net.wifi.WifiScanner.HotlistListener); method public void startBackgroundScan(android.net.wifi.WifiScanner.ScanSettings, android.net.wifi.WifiScanner.ScanListener); method public void startTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener); method public void stopBackgroundScan(android.net.wifi.WifiScanner.ScanListener); method public void stopTrackingWifiChange(android.net.wifi.WifiScanner.WifiChangeListener); field public static final int MAX_SCAN_PERIOD_MS = 1024000; // 0xfa000 field public static final int MIN_SCAN_PERIOD_MS = 2000; // 0x7d0 field public static final int REASON_CONFLICTING_REQUEST = -4; // 0xfffffffc field public static final int REASON_INVALID_LISTENER = -2; // 0xfffffffe field public static final int REASON_INVALID_REQUEST = -3; // 0xfffffffd field public static final int REASON_SUCCEEDED = 0; // 0x0 field public static final int REASON_UNSPECIFIED = -1; // 0xffffffff field public static final int REPORT_EVENT_AFTER_BUFFER_FULL = 0; // 0x0 field public static final int REPORT_EVENT_AFTER_EACH_SCAN = 1; // 0x1 field public static final int REPORT_EVENT_FULL_SCAN_RESULT = 2; // 0x2 field public static final int WIFI_BAND_24_GHZ = 1; // 0x1 field public static final int WIFI_BAND_5_GHZ = 2; // 0x2 field public static final int WIFI_BAND_5_GHZ_DFS_ONLY = 4; // 0x4 field public static final int WIFI_BAND_5_GHZ_WITH_DFS = 6; // 0x6 field public static final int WIFI_BAND_BOTH = 3; // 0x3 field public static final int WIFI_BAND_BOTH_WITH_DFS = 7; // 0x7 field public static final int WIFI_BAND_UNSPECIFIED = 0; // 0x0 } public static class WifiScanner.ChannelSpec { ctor public WifiScanner.ChannelSpec(int); field public int frequency; } public static class WifiScanner.FullScanResult implements android.os.Parcelable { ctor public WifiScanner.FullScanResult(); method public int describeContents(); method public void writeToParcel(android.os.Parcel, int); field public android.net.wifi.WifiScanner.InformationElement[] informationElements; field public android.net.wifi.ScanResult result; } public static abstract interface WifiScanner.HotlistListener { method public abstract void onFound(android.net.wifi.ScanResult[]); } public static class WifiScanner.HotspotInfo { ctor public WifiScanner.HotspotInfo(); field public java.lang.String bssid; field public int frequencyHint; field public int high; field public int low; } public static class WifiScanner.InformationElement { ctor public WifiScanner.InformationElement(); field public byte[] bytes; field public int id; } public static abstract interface WifiScanner.ScanListener { method public abstract void onFullResult(android.net.wifi.WifiScanner.FullScanResult); method public abstract void onPeriodChanged(int); method public abstract void onResults(android.net.wifi.ScanResult[]); } public static class WifiScanner.ScanSettings implements android.os.Parcelable { ctor public WifiScanner.ScanSettings(); method public int describeContents(); method public void writeToParcel(android.os.Parcel, int); field public int band; field public android.net.wifi.WifiScanner.ChannelSpec[] channels; field public int periodInMs; field public int reportEvents; } public static abstract interface WifiScanner.WifiChangeListener { method public abstract void onChanging(android.net.wifi.ScanResult[]); method public abstract void onQuiescence(android.net.wifi.ScanResult[]); } public class WpsInfo implements android.os.Parcelable { ctor public WpsInfo(); ctor public WpsInfo(android.net.wifi.WpsInfo);
wifi/java/android/net/wifi/ScanResult.java +34 −1 Original line number Diff line number Diff line Loading @@ -90,6 +90,19 @@ public class ScanResult implements Parcelable { */ public final static int UNSPECIFIED = -1; /** information element from beacon * @hide */ public static class InformationElement { public int id; public byte[] bytes; } /** information elements found in the beacon * @hide */ public InformationElement informationElements[]; /** {@hide} */ public ScanResult(WifiSsid wifiSsid, String BSSID, String caps, int level, int frequency, long tsf) { Loading Loading @@ -199,6 +212,16 @@ public class ScanResult implements Parcelable { } else { dest.writeInt(0); } if (informationElements != null) { dest.writeInt(informationElements.length); for (int i = 0; i < informationElements.length; i++) { dest.writeInt(informationElements[i].id); dest.writeInt(informationElements[i].bytes.length); dest.writeByteArray(informationElements[i].bytes); } } else { dest.writeInt(0); } } /** Implement the Parcelable interface {@hide} */ Loading @@ -223,6 +246,17 @@ public class ScanResult implements Parcelable { if (in.readInt() == 1) { sr.passpoint = WifiPasspointInfo.CREATOR.createFromParcel(in); } int n = in.readInt(); if (n != 0) { sr.informationElements = new InformationElement[n]; for (int i = 0; i < n; i++) { sr.informationElements[i] = new InformationElement(); sr.informationElements[i].id = in.readInt(); int len = in.readInt(); sr.informationElements[i].bytes = new byte[len]; in.readByteArray(sr.informationElements[i].bytes); } } return sr; } Loading @@ -230,5 +264,4 @@ public class ScanResult implements Parcelable { return new ScanResult[size]; } }; }
wifi/java/android/net/wifi/WifiScanner.java +18 −72 Original line number Diff line number Diff line Loading @@ -40,6 +40,7 @@ import java.util.concurrent.CountDownLatch; * Get an instance of this class by calling * {@link android.content.Context#getSystemService(String) Context.getSystemService(Context * .WIFI_SCANNING_SERVICE)}. * @hide */ public class WifiScanner { Loading Loading @@ -72,16 +73,14 @@ public class WifiScanner { public static final int REASON_INVALID_LISTENER = -2; /** Invalid request */ public static final int REASON_INVALID_REQUEST = -3; /** Request conflicts with other scans that may be going on */ public static final int REASON_CONFLICTING_REQUEST = -4; /** * Generic action callback invocation interface * @hide */ public static interface ActionListener { public void onSuccess(Object result); public void onFailure(int reason, Object exception); public void onSuccess(); public void onFailure(int reason, String description); } /** Loading Loading @@ -193,58 +192,6 @@ public class WifiScanner { } /** information element from beacon */ public static class InformationElement { public int id; public byte[] bytes; } /** scan result with information elements from beacons */ public static class FullScanResult implements Parcelable { public ScanResult result; public InformationElement informationElements[]; /** Implement the Parcelable interface {@hide} */ public int describeContents() { return 0; } /** Implement the Parcelable interface {@hide} */ public void writeToParcel(Parcel dest, int flags) { result.writeToParcel(dest, flags); dest.writeInt(informationElements.length); for (int i = 0; i < informationElements.length; i++) { dest.writeInt(informationElements[i].id); dest.writeInt(informationElements[i].bytes.length); dest.writeByteArray(informationElements[i].bytes); } } /** Implement the Parcelable interface {@hide} */ public static final Creator<FullScanResult> CREATOR = new Creator<FullScanResult>() { public FullScanResult createFromParcel(Parcel in) { FullScanResult result = new FullScanResult(); result.result = ScanResult.CREATOR.createFromParcel(in); int n = in.readInt(); result.informationElements = new InformationElement[n]; for (int i = 0; i < n; i++) { result.informationElements[i] = new InformationElement(); result.informationElements[i].id = in.readInt(); int len = in.readInt(); result.informationElements[i].bytes = new byte[len]; in.readByteArray(result.informationElements[i].bytes); } return result; } public FullScanResult[] newArray(int size) { return new FullScanResult[size]; } }; } /** @hide */ public static class ParcelableScanResults implements Parcelable { public ScanResult mResults[]; Loading Loading @@ -305,7 +252,7 @@ public class WifiScanner { /** * reports full scan result for each access point found in scan */ public void onFullResult(FullScanResult fullScanResult); public void onFullResult(ScanResult fullScanResult); } /** @hide */ Loading Loading @@ -336,13 +283,12 @@ public class WifiScanner { } /** * retrieves currently available scan results * @param flush {@code true} means flush all results * @param listener specifies which scan to cancel; must be same object as passed in {@link * #startBackgroundScan} */ public void retrieveScanResults(boolean flush, ScanListener listener) { public ScanResult[] getScanResults() { validateChannel(); sAsyncChannel.sendMessage(CMD_GET_SCAN_RESULTS, 0, getListenerKey(listener)); Message reply = sAsyncChannel.sendMessageSynchronously(CMD_GET_SCAN_RESULTS, 0); ScanResult[] results = (ScanResult[]) reply.obj; return results; } /** specifies information about an access point of interest */ Loading Loading @@ -490,7 +436,7 @@ public class WifiScanner { } /** interface to receive hotlist events on; use this on {@link #setHotlist} */ public static interface HotlistListener extends ActionListener { public static interface HotspotListener extends ActionListener { /** indicates that access points were found by on going scans * @param results list of scan results, one for each access point visible currently */ Loading Loading @@ -550,10 +496,10 @@ public class WifiScanner { * @param hotspots access points of interest * @param apLostThreshold number of scans needed to indicate that AP is lost * @param listener object provided to report events on; this object must be unique and must * also be provided on {@link #resetHotlist} * also be provided on {@link #stopTrackingHotspots} */ public void setHotlist(HotspotInfo[] hotspots, int apLostThreshold, HotlistListener listener) { public void startTrackingHotspots(HotspotInfo[] hotspots, int apLostThreshold, HotspotListener listener) { validateChannel(); HotlistSettings settings = new HotlistSettings(); settings.hotspotInfos = hotspots; Loading @@ -562,9 +508,9 @@ public class WifiScanner { /** * remove tracking of interesting access points * @param listener same object provided in {@link #setHotlist} * @param listener same object provided in {@link #startTrackingHotspots} */ public void resetHotlist(HotlistListener listener) { public void stopTrackingHotspots(HotspotListener listener) { validateChannel(); sAsyncChannel.sendMessage(CMD_RESET_HOTLIST, 0, removeListener(listener)); } Loading Loading @@ -769,10 +715,10 @@ public class WifiScanner { switch (msg.what) { /* ActionListeners grouped together */ case CMD_OP_SUCCEEDED : ((ActionListener) listener).onSuccess(msg.obj); ((ActionListener) listener).onSuccess(); break; case CMD_OP_FAILED : ((ActionListener) listener).onFailure(msg.arg1, msg.obj); ((ActionListener) listener).onFailure(msg.arg1, (String)msg.obj); removeListener(msg.arg2); break; case CMD_SCAN_RESULT : Loading @@ -780,14 +726,14 @@ public class WifiScanner { ((ParcelableScanResults) msg.obj).getResults()); return; case CMD_FULL_SCAN_RESULT : FullScanResult result = (FullScanResult) msg.obj; ScanResult result = (ScanResult) msg.obj; ((ScanListener) listener).onFullResult(result); return; case CMD_PERIOD_CHANGED: ((ScanListener) listener).onPeriodChanged(msg.arg1); return; case CMD_AP_FOUND: ((HotlistListener) listener).onFound( ((HotspotListener) listener).onFound( ((ParcelableScanResults) msg.obj).getResults()); return; case CMD_WIFI_CHANGE_DETECTED: Loading