Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e334ea7d authored by Ecco Park's avatar Ecco Park Committed by Android (Google) Code Review
Browse files

Merge "Passpoint: add FQDN and Provider name field in WifiInfo"

parents 957e868f 3f94ad15
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -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 {
+46 −0
Original line number Diff line number Diff line
@@ -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;
            }

+7 −0
Original line number Diff line number Diff line
@@ -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());
    }
}