Merge "Passpoint: add FQDN and Provider name field in WifiInfo"
This commit is contained in:
@@ -4666,7 +4666,10 @@ package android.net.wifi {
|
||||
}
|
||||
|
||||
public class WifiInfo implements android.os.Parcelable {
|
||||
method @Nullable public String getFqdn();
|
||||
method @Nullable public String getProviderFriendlyName();
|
||||
method public boolean isOsuAp();
|
||||
method public boolean isPasspointAp();
|
||||
}
|
||||
|
||||
public class WifiManager {
|
||||
|
||||
@@ -136,6 +136,16 @@ public class WifiInfo implements Parcelable {
|
||||
*/
|
||||
private boolean mOsuAp;
|
||||
|
||||
/**
|
||||
* Fully qualified domain name of a Passpoint configuration
|
||||
*/
|
||||
private String mFqdn;
|
||||
|
||||
/**
|
||||
* Name of Passpoint credential provider
|
||||
*/
|
||||
private String mProviderFriendlyName;
|
||||
|
||||
/**
|
||||
* If connected to a network suggestion or specifier, store the package name of the app,
|
||||
* else null.
|
||||
@@ -223,6 +233,8 @@ public class WifiInfo implements Parcelable {
|
||||
setEphemeral(false);
|
||||
setOsuAp(false);
|
||||
setNetworkSuggestionOrSpecifierPackageName(null);
|
||||
setFQDN(null);
|
||||
setProviderFriendlyName(null);
|
||||
txBad = 0;
|
||||
txSuccess = 0;
|
||||
rxSuccess = 0;
|
||||
@@ -257,6 +269,8 @@ public class WifiInfo implements Parcelable {
|
||||
mNetworkSuggestionOrSpecifierPackageName =
|
||||
source.mNetworkSuggestionOrSpecifierPackageName;
|
||||
mOsuAp = source.mOsuAp;
|
||||
mFqdn = source.mFqdn;
|
||||
mProviderFriendlyName = source.mProviderFriendlyName;
|
||||
txBad = source.txBad;
|
||||
txRetries = source.txRetries;
|
||||
txSuccess = source.txSuccess;
|
||||
@@ -503,6 +517,34 @@ public class WifiInfo implements Parcelable {
|
||||
return mOsuAp;
|
||||
}
|
||||
|
||||
/** {@hide} */
|
||||
@SystemApi
|
||||
public boolean isPasspointAp() {
|
||||
return mFqdn != null && mProviderFriendlyName != null;
|
||||
}
|
||||
|
||||
/** {@hide} */
|
||||
public void setFQDN(@Nullable String fqdn) {
|
||||
mFqdn = fqdn;
|
||||
}
|
||||
|
||||
/** {@hide} */
|
||||
@SystemApi
|
||||
public @Nullable String getFqdn() {
|
||||
return mFqdn;
|
||||
}
|
||||
|
||||
/** {@hide} */
|
||||
public void setProviderFriendlyName(@Nullable String providerFriendlyName) {
|
||||
mProviderFriendlyName = providerFriendlyName;
|
||||
}
|
||||
|
||||
/** {@hide} */
|
||||
@SystemApi
|
||||
public @Nullable String getProviderFriendlyName() {
|
||||
return mProviderFriendlyName;
|
||||
}
|
||||
|
||||
/** {@hide} */
|
||||
public void setNetworkSuggestionOrSpecifierPackageName(@Nullable String packageName) {
|
||||
mNetworkSuggestionOrSpecifierPackageName = packageName;
|
||||
@@ -677,6 +719,8 @@ public class WifiInfo implements Parcelable {
|
||||
mSupplicantState.writeToParcel(dest, flags);
|
||||
dest.writeInt(mOsuAp ? 1 : 0);
|
||||
dest.writeString(mNetworkSuggestionOrSpecifierPackageName);
|
||||
dest.writeString(mFqdn);
|
||||
dest.writeString(mProviderFriendlyName);
|
||||
}
|
||||
|
||||
/** Implement the Parcelable interface {@hide} */
|
||||
@@ -716,6 +760,8 @@ public class WifiInfo implements Parcelable {
|
||||
info.mSupplicantState = SupplicantState.CREATOR.createFromParcel(in);
|
||||
info.mOsuAp = in.readInt() != 0;
|
||||
info.mNetworkSuggestionOrSpecifierPackageName = in.readString();
|
||||
info.mFqdn = in.readString();
|
||||
info.mProviderFriendlyName = in.readString();
|
||||
return info;
|
||||
}
|
||||
|
||||
|
||||
@@ -36,6 +36,8 @@ public class WifiInfoTest {
|
||||
private static final long TEST_TX_BAD = 3;
|
||||
private static final long TEST_RX_SUCCESS = 4;
|
||||
private static final String TEST_PACKAGE_NAME = "com.test.example";
|
||||
private static final String TEST_FQDN = "test.com";
|
||||
private static final String TEST_PROVIDER_NAME = "test";
|
||||
|
||||
/**
|
||||
* Verify parcel write/read with WifiInfo.
|
||||
@@ -49,6 +51,8 @@ public class WifiInfoTest {
|
||||
writeWifiInfo.rxSuccess = TEST_RX_SUCCESS;
|
||||
writeWifiInfo.setTrusted(true);
|
||||
writeWifiInfo.setOsuAp(true);
|
||||
writeWifiInfo.setFQDN(TEST_FQDN);
|
||||
writeWifiInfo.setProviderFriendlyName(TEST_PROVIDER_NAME);
|
||||
writeWifiInfo.setNetworkSuggestionOrSpecifierPackageName(TEST_PACKAGE_NAME);
|
||||
|
||||
Parcel parcel = Parcel.obtain();
|
||||
@@ -64,6 +68,9 @@ public class WifiInfoTest {
|
||||
assertEquals(TEST_RX_SUCCESS, readWifiInfo.rxSuccess);
|
||||
assertTrue(readWifiInfo.isTrusted());
|
||||
assertTrue(readWifiInfo.isOsuAp());
|
||||
assertTrue(readWifiInfo.isPasspointAp());
|
||||
assertEquals(TEST_PACKAGE_NAME, readWifiInfo.getNetworkSuggestionOrSpecifierPackageName());
|
||||
assertEquals(TEST_FQDN, readWifiInfo.getFqdn());
|
||||
assertEquals(TEST_PROVIDER_NAME, readWifiInfo.getProviderFriendlyName());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user