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

Commit a3b640ac authored by Roshan Pius's avatar Roshan Pius Committed by Android (Google) Code Review
Browse files

Merge changes from topic "ui_attribution_suggestion_specifier_2"

* changes:
  WifiManager: Remove @SystemApi tag for settings APIs
  WifiInfo: App attribution for suggestion/request
parents ecc22e2f 3a8cc45d
Loading
Loading
Loading
Loading
+0 −15
Original line number Diff line number Diff line
@@ -4694,7 +4694,6 @@ package android.net.wifi {
    method public boolean isPortableHotspotSupported();
    method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isWifiApEnabled();
    method public boolean isWifiScannerSupported();
    method @RequiresPermission("android.permission.NETWORK_SETTINGS") public void registerNetworkRequestMatchCallback(@NonNull android.net.wifi.WifiManager.NetworkRequestMatchCallback, @Nullable android.os.Handler);
    method @RequiresPermission("android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE") public void removeWifiUsabilityStatsListener(@NonNull android.net.wifi.WifiManager.WifiUsabilityStatsListener);
    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD, "android.permission.NETWORK_STACK"}) public void save(android.net.wifi.WifiConfiguration, android.net.wifi.WifiManager.ActionListener);
    method @RequiresPermission("android.permission.WIFI_SET_DEVICE_MOBILITY_STATE") public void setDeviceMobilityState(int);
@@ -4704,7 +4703,6 @@ package android.net.wifi {
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public boolean startScan(android.os.WorkSource);
    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void startSubscriptionProvisioning(android.net.wifi.hotspot2.OsuProvider, android.net.wifi.hotspot2.ProvisioningCallback, @Nullable android.os.Handler);
    method @RequiresPermission(anyOf={"android.permission.NETWORK_SETTINGS", android.Manifest.permission.NETWORK_SETUP_WIZARD}) public void stopEasyConnectSession();
    method @RequiresPermission("android.permission.NETWORK_SETTINGS") public void unregisterNetworkRequestMatchCallback(@NonNull android.net.wifi.WifiManager.NetworkRequestMatchCallback);
    method @RequiresPermission("android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE") public void updateWifiUsabilityScore(int, int, int);
    field public static final int CHANGE_REASON_ADDED = 0; // 0x0
    field public static final int CHANGE_REASON_CONFIG_CHANGE = 2; // 0x2
@@ -4741,19 +4739,6 @@ package android.net.wifi {
    method public void onSuccess();
  }
  public static interface WifiManager.NetworkRequestMatchCallback {
    method public void onAbort();
    method public void onMatch(@NonNull java.util.List<android.net.wifi.ScanResult>);
    method public void onUserSelectionCallbackRegistration(@NonNull android.net.wifi.WifiManager.NetworkRequestUserSelectionCallback);
    method public void onUserSelectionConnectFailure(@NonNull android.net.wifi.WifiConfiguration);
    method public void onUserSelectionConnectSuccess(@NonNull android.net.wifi.WifiConfiguration);
  }
  public static interface WifiManager.NetworkRequestUserSelectionCallback {
    method public void reject();
    method public void select(@NonNull android.net.wifi.WifiConfiguration);
  }
  public static interface WifiManager.WifiUsabilityStatsListener {
    method public void onStatsUpdated(int, boolean, android.net.wifi.WifiUsabilityStatsEntry);
  }
+29 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package android.net.wifi;

import android.annotation.Nullable;
import android.annotation.SystemApi;
import android.annotation.UnsupportedAppUsage;
import android.net.NetworkInfo.DetailedState;
@@ -120,8 +121,14 @@ public class WifiInfo implements Parcelable {
    @UnsupportedAppUsage
    private String mMacAddress = DEFAULT_MAC_ADDRESS;

    /**
     * Whether the network is ephemeral or not.
     */
    private boolean mEphemeral;

    /**
     * Whether the network is trusted or not.
     */
    private boolean mTrusted;

    /**
@@ -129,6 +136,12 @@ public class WifiInfo implements Parcelable {
     */
    private boolean mOsuAp;

    /**
     * If connected to a network suggestion or specifier, store the package name of the app,
     * else null.
     */
    private String mNetworkSuggestionOrSpecifierPackageName;

    /**
     * Running total count of lost (not ACKed) transmitted unicast data packets.
     * @hide
@@ -209,6 +222,7 @@ public class WifiInfo implements Parcelable {
        setMeteredHint(false);
        setEphemeral(false);
        setOsuAp(false);
        setNetworkSuggestionOrSpecifierPackageName(null);
        txBad = 0;
        txSuccess = 0;
        rxSuccess = 0;
@@ -240,6 +254,8 @@ public class WifiInfo implements Parcelable {
            mMeteredHint = source.mMeteredHint;
            mEphemeral = source.mEphemeral;
            mTrusted = source.mTrusted;
            mNetworkSuggestionOrSpecifierPackageName =
                    source.mNetworkSuggestionOrSpecifierPackageName;
            mOsuAp = source.mOsuAp;
            txBad = source.txBad;
            txRetries = source.txRetries;
@@ -476,6 +492,17 @@ public class WifiInfo implements Parcelable {
        return mOsuAp;
    }

    /** {@hide} */
    public void setNetworkSuggestionOrSpecifierPackageName(@Nullable String packageName) {
        mNetworkSuggestionOrSpecifierPackageName = packageName;
    }

    /** {@hide} */
    public @Nullable String getNetworkSuggestionOrSpecifierPackageName() {
        return mNetworkSuggestionOrSpecifierPackageName;
    }


    /** @hide */
    @UnsupportedAppUsage
    public void setNetworkId(int id) {
@@ -634,6 +661,7 @@ public class WifiInfo implements Parcelable {
        dest.writeDouble(rxSuccessRate);
        mSupplicantState.writeToParcel(dest, flags);
        dest.writeInt(mOsuAp ? 1 : 0);
        dest.writeString(mNetworkSuggestionOrSpecifierPackageName);
    }

    /** Implement the Parcelable interface {@hide} */
@@ -672,6 +700,7 @@ public class WifiInfo implements Parcelable {
                info.rxSuccessRate = in.readDouble();
                info.mSupplicantState = SupplicantState.CREATOR.createFromParcel(in);
                info.mOsuAp = in.readInt() != 0;
                info.mNetworkSuggestionOrSpecifierPackageName = in.readString();
                return info;
            }

+0 −4
Original line number Diff line number Diff line
@@ -1404,7 +1404,6 @@ public class WifiManager {
     * {@link #reject()} to return the user's selection back to the platform via this callback.
     * @hide
     */
    @SystemApi
    public interface NetworkRequestUserSelectionCallback {
        /**
         * User selected this network to connect to.
@@ -1428,7 +1427,6 @@ public class WifiManager {
     * or reject the request by the app.
     * @hide
     */
    @SystemApi
    public interface NetworkRequestMatchCallback {
        /**
         * Invoked to register a callback to be invoked to convey user selection. The callback
@@ -1605,7 +1603,6 @@ public class WifiManager {
     *                 object. If null, then the application's main thread will be used.
     * @hide
     */
    @SystemApi
    @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS)
    public void registerNetworkRequestMatchCallback(@NonNull NetworkRequestMatchCallback callback,
                                                    @Nullable Handler handler) {
@@ -1635,7 +1632,6 @@ public class WifiManager {
     * @param callback Callback for network match events
     * @hide
     */
    @SystemApi
    @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS)
    public void unregisterNetworkRequestMatchCallback(
            @NonNull NetworkRequestMatchCallback callback) {
+3 −0
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ public class WifiInfoTest {
    private static final long TEST_TX_RETRIES = 2;
    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";

    /**
     *  Verify parcel write/read with WifiInfo.
@@ -48,6 +49,7 @@ public class WifiInfoTest {
        writeWifiInfo.rxSuccess = TEST_RX_SUCCESS;
        writeWifiInfo.setTrusted(true);
        writeWifiInfo.setOsuAp(true);
        writeWifiInfo.setNetworkSuggestionOrSpecifierPackageName(TEST_PACKAGE_NAME);

        Parcel parcel = Parcel.obtain();
        writeWifiInfo.writeToParcel(parcel, 0);
@@ -62,5 +64,6 @@ public class WifiInfoTest {
        assertEquals(TEST_RX_SUCCESS, readWifiInfo.rxSuccess);
        assertTrue(readWifiInfo.isTrusted());
        assertTrue(readWifiInfo.isOsuAp());
        assertEquals(TEST_PACKAGE_NAME, readWifiInfo.getNetworkSuggestionOrSpecifierPackageName());
    }
}