summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVinit Deshpande <vinitd@google.com>2014-07-11 12:48:04 -0700
committerVinit Deshpande <vinitd@google.com>2014-07-11 21:12:36 +0000
commit81e32da98f5a8ab11bb557f4f12de022ab59b48b (patch)
tree34dd3067483ece61f91f05ae6ae225b831e1ae3e
parent30f01591c8109cc6193de8d6f1246f5861a34b13 (diff)
downloadframeworks_base-81e32da98f5a8ab11bb557f4f12de022ab59b48b.zip
frameworks_base-81e32da98f5a8ab11bb557f4f12de022ab59b48b.tar.gz
frameworks_base-81e32da98f5a8ab11bb557f4f12de022ab59b48b.tar.bz2
Unhide WifiAdapter APIs
Change-Id: Ia19ab4cfddddd3285ae9e0c5804f2cceda4cf063
-rw-r--r--api/current.txt18
-rw-r--r--wifi/java/android/net/wifi/WifiAdapter.java90
-rw-r--r--wifi/java/android/net/wifi/WifiManager.java5
3 files changed, 104 insertions, 9 deletions
diff --git a/api/current.txt b/api/current.txt
index d4c6d46..5ebb0b8 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -17340,6 +17340,23 @@ package android.net.wifi {
enum_constant public static final android.net.wifi.SupplicantState UNINITIALIZED;
}
+ public class WifiAdapter implements android.os.Parcelable {
+ method public int describeContents();
+ method public java.lang.String getName();
+ method public boolean is5GHzBandSupported();
+ method public boolean isDeviceToApRttSupported();
+ method public boolean isDeviceToDeviceRttSupported();
+ method public boolean isEnhancedPowerReportingSupported();
+ method public boolean isOffChannelTdlsSupported();
+ method public boolean isP2pSupported();
+ method public boolean isPasspointSupported();
+ method public boolean isPortableHotspotSupported();
+ method public boolean isPreferredNetworkOffloadSupported();
+ method public boolean isTdlsSupported();
+ method public boolean isWifiScannerSupported();
+ method public void writeToParcel(android.os.Parcel, int);
+ }
+
public class WifiConfiguration implements android.os.Parcelable {
ctor public WifiConfiguration();
method public int describeContents();
@@ -17478,6 +17495,7 @@ package android.net.wifi {
method public boolean disableNetwork(int);
method public boolean disconnect();
method public boolean enableNetwork(int, boolean);
+ method public java.util.List<android.net.wifi.WifiAdapter> getAdapters();
method public java.util.List<android.net.wifi.WifiConfiguration> getConfiguredNetworks();
method public android.net.wifi.WifiInfo getConnectionInfo();
method public android.net.DhcpInfo getDhcpInfo();
diff --git a/wifi/java/android/net/wifi/WifiAdapter.java b/wifi/java/android/net/wifi/WifiAdapter.java
index f6ee730..c0211f3 100644
--- a/wifi/java/android/net/wifi/WifiAdapter.java
+++ b/wifi/java/android/net/wifi/WifiAdapter.java
@@ -19,34 +19,57 @@ package android.net.wifi;
import android.os.Parcel;
import android.os.Parcelable;
-/** @hide */
+/**
+ * Represents local wifi adapter. Different devices have different kinds of
+ * wifi adapters; each with different capabilities. Use this class to find out
+ * which capabilites are supported by the wifi adapter on the device.
+ */
public class WifiAdapter implements Parcelable {
/* Keep this list in sync with wifi_hal.h */
+ /** @hide */
public static final int WIFI_FEATURE_INFRA = 0x0001; // Basic infrastructure mode
+ /** @hide */
public static final int WIFI_FEATURE_INFRA_5G = 0x0002; // Support for 5 GHz Band
+ /** @hide */
public static final int WIFI_FEATURE_PASSPOINT = 0x0004; // Support for GAS/ANQP
+ /** @hide */
public static final int WIFI_FEATURE_P2P = 0x0008; // Wifi-Direct
+ /** @hide */
public static final int WIFI_FEATURE_MOBILE_HOTSPOT = 0x0010; // Soft AP
+ /** @hide */
public static final int WIFI_FEATURE_SCANNER = 0x0020; // WifiScanner APIs
+ /** @hide */
public static final int WIFI_FEATURE_NAN = 0x0040; // Neighbor Awareness Networking
+ /** @hide */
public static final int WIFI_FEATURE_D2D_RTT = 0x0080; // Device-to-device RTT
+ /** @hide */
public static final int WIFI_FEATURE_D2AP_RTT = 0x0100; // Device-to-AP RTT
+ /** @hide */
public static final int WIFI_FEATURE_BATCH_SCAN = 0x0200; // Batched Scan (deprecated)
+ /** @hide */
public static final int WIFI_FEATURE_PNO = 0x0400; // Preferred network offload
+ /** @hide */
public static final int WIFI_FEATURE_ADDITIONAL_STA = 0x0800; // Support for two STAs
+ /** @hide */
public static final int WIFI_FEATURE_TDLS = 0x1000; // Tunnel directed link setup
+ /** @hide */
public static final int WIFI_FEATURE_TDLS_OFFCHANNEL = 0x2000; // Support for TDLS off channel
+ /** @hide */
public static final int WIFI_FEATURE_EPR = 0x4000; // Enhanced power reporting
private String name;
private int supportedFeatures;
+ /** @hide */
public WifiAdapter(String name, int supportedFeatures) {
this.name = name;
this.supportedFeatures = supportedFeatures;
}
+ /**
+ * @return name of the adapter
+ */
public String getName() {
return name;
}
@@ -59,68 +82,121 @@ public class WifiAdapter implements Parcelable {
return (supportedFeatures & feature) == feature;
}
+ /**
+ * @return true if this adapter supports 5 GHz band
+ */
+ public boolean is5GHzBandSupported() {
+ return isFeatureSupported(WIFI_FEATURE_INFRA_5G);
+ }
+
+ /**
+ * @return true if this adapter supports passpoint
+ */
public boolean isPasspointSupported() {
return isFeatureSupported(WIFI_FEATURE_PASSPOINT);
}
- public boolean isWifiDirectSupported() {
+ /**
+ * @return true if this adapter supports WifiP2pManager (Wi-Fi Direct)
+ */
+ public boolean isP2pSupported() {
return isFeatureSupported(WIFI_FEATURE_P2P);
}
- public boolean isMobileHotstpoSupported() {
+ /**
+ * @return true if this adapter supports portable Wi-Fi hotspot
+ */
+ public boolean isPortableHotspotSupported() {
return isFeatureSupported(WIFI_FEATURE_MOBILE_HOTSPOT);
}
+ /**
+ * @return true if this adapter supports WifiScanner APIs
+ */
public boolean isWifiScannerSupported() {
return isFeatureSupported(WIFI_FEATURE_SCANNER);
}
+ /**
+ * @return true if this adapter supports Neighbour Awareness Network APIs
+ * @hide
+ */
public boolean isNanSupported() {
return isFeatureSupported(WIFI_FEATURE_NAN);
}
+ /**
+ * @return true if this adapter supports Device-to-device RTT
+ */
public boolean isDeviceToDeviceRttSupported() {
return isFeatureSupported(WIFI_FEATURE_D2D_RTT);
}
+ /**
+ * @return true if this adapter supports Device-to-AP RTT
+ */
public boolean isDeviceToApRttSupported() {
return isFeatureSupported(WIFI_FEATURE_D2AP_RTT);
}
+ /**
+ * @return true if this adapter supports offloaded connectivity scan
+ */
public boolean isPreferredNetworkOffloadSupported() {
return isFeatureSupported(WIFI_FEATURE_PNO);
}
+ /**
+ * @return true if this adapter supports multiple simultaneous connections
+ * @hide
+ */
public boolean isAdditionalStaSupported() {
return isFeatureSupported(WIFI_FEATURE_ADDITIONAL_STA);
}
+ /**
+ * @return true if this adapter supports Tunnel Directed Link Setup
+ */
public boolean isTdlsSupported() {
return isFeatureSupported(WIFI_FEATURE_TDLS);
}
+ /**
+ * @return true if this adapter supports Off Channel Tunnel Directed Link Setup
+ */
public boolean isOffChannelTdlsSupported() {
return isFeatureSupported(WIFI_FEATURE_TDLS_OFFCHANNEL);
}
+ /**
+ * @return true if this adapter supports advanced power/performance counters
+ */
public boolean isEnhancedPowerReportingSupported() {
return isFeatureSupported(WIFI_FEATURE_EPR);
}
/* Parcelable implementation */
-
- /** Implement the Parcelable interface {@hide} */
+ /**
+ * Implement the Parcelable interface
+ * {@hide}
+ */
public int describeContents() {
return 0;
}
- /** Implement the Parcelable interface {@hide} */
+ /**
+ * Implement the Parcelable interface
+ * {@hide}
+ */
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(name);
dest.writeInt(supportedFeatures);
}
- /** Implement the Parcelable interface {@hide} */
+ /**
+ * Implement the Parcelable interface
+ * {@hide}
+ */
public static final Creator<WifiAdapter> CREATOR =
new Creator<WifiAdapter>() {
public WifiAdapter createFromParcel(Parcel in) {
diff --git a/wifi/java/android/net/wifi/WifiManager.java b/wifi/java/android/net/wifi/WifiManager.java
index f9a9e7d..cf4cb89 100644
--- a/wifi/java/android/net/wifi/WifiManager.java
+++ b/wifi/java/android/net/wifi/WifiManager.java
@@ -568,9 +568,10 @@ public class WifiManager {
}
/**
- * @hide
+ * Retrieve all wifi adapters available on this device
+ * @return list of adapters
*/
- public List<WifiAdapter> getAdaptors() {
+ public List<WifiAdapter> getAdapters() {
try {
return mService.getAdaptors();
} catch (RemoteException e) {