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

Commit 174d8f3c authored by Nate Jiang's avatar Nate Jiang Committed by Android (Google) Code Review
Browse files

Merge "[AWARE] Add new API to support instant communication mode"

parents 24879149 1e454fe8
Loading
Loading
Loading
Loading
+2 −0
Original line number Original line Diff line number Diff line
@@ -31853,6 +31853,7 @@ package android.net.wifi.aware {
    method public int getMaxServiceNameLength();
    method public int getMaxServiceNameLength();
    method public int getMaxServiceSpecificInfoLength();
    method public int getMaxServiceSpecificInfoLength();
    method public int getSupportedCipherSuites();
    method public int getSupportedCipherSuites();
    method public boolean isInstantCommunicationModeSupported();
    method public void writeToParcel(android.os.Parcel, int);
    method public void writeToParcel(android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.Characteristics> CREATOR;
    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.Characteristics> CREATOR;
    field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_128 = 1; // 0x1
    field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_128 = 1; // 0x1
@@ -31951,6 +31952,7 @@ package android.net.wifi.aware {
    method public android.net.wifi.aware.Characteristics getCharacteristics();
    method public android.net.wifi.aware.Characteristics getCharacteristics();
    method public boolean isAvailable();
    method public boolean isAvailable();
    method public boolean isDeviceAttached();
    method public boolean isDeviceAttached();
    method public boolean isInstantCommunicationModeEnabled();
    field public static final String ACTION_WIFI_AWARE_STATE_CHANGED = "android.net.wifi.aware.action.WIFI_AWARE_STATE_CHANGED";
    field public static final String ACTION_WIFI_AWARE_STATE_CHANGED = "android.net.wifi.aware.action.WIFI_AWARE_STATE_CHANGED";
    field public static final int WIFI_AWARE_DATA_PATH_ROLE_INITIATOR = 0; // 0x0
    field public static final int WIFI_AWARE_DATA_PATH_ROLE_INITIATOR = 0; // 0x0
    field public static final int WIFI_AWARE_DATA_PATH_ROLE_RESPONDER = 1; // 0x1
    field public static final int WIFI_AWARE_DATA_PATH_ROLE_RESPONDER = 1; // 0x1
+4 −0
Original line number Original line Diff line number Diff line
@@ -8040,6 +8040,10 @@ package android.net.wifi.aware {
    method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPmk(@NonNull android.net.wifi.aware.PeerHandle, @NonNull byte[]);
    method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPmk(@NonNull android.net.wifi.aware.PeerHandle, @NonNull byte[]);
  }
  }
  public class WifiAwareManager {
    method public void enableInstantCommunicationMode(boolean);
  }
  public class WifiAwareSession implements java.lang.AutoCloseable {
  public class WifiAwareSession implements java.lang.AutoCloseable {
    method public android.net.NetworkSpecifier createNetworkSpecifierPmk(int, @NonNull byte[], @NonNull byte[]);
    method public android.net.NetworkSpecifier createNetworkSpecifierPmk(int, @NonNull byte[], @NonNull byte[]);
  }
  }
+2 −0
Original line number Original line Diff line number Diff line
@@ -563,6 +563,7 @@ package android.net.wifi.aware {
    method public int getMaxServiceNameLength();
    method public int getMaxServiceNameLength();
    method public int getMaxServiceSpecificInfoLength();
    method public int getMaxServiceSpecificInfoLength();
    method public int getSupportedCipherSuites();
    method public int getSupportedCipherSuites();
    method public boolean isInstantCommunicationModeSupported();
    method public void writeToParcel(android.os.Parcel, int);
    method public void writeToParcel(android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.Characteristics> CREATOR;
    field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.Characteristics> CREATOR;
    field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_128 = 1; // 0x1
    field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_128 = 1; // 0x1
@@ -661,6 +662,7 @@ package android.net.wifi.aware {
    method public android.net.wifi.aware.Characteristics getCharacteristics();
    method public android.net.wifi.aware.Characteristics getCharacteristics();
    method public boolean isAvailable();
    method public boolean isAvailable();
    method public boolean isDeviceAttached();
    method public boolean isDeviceAttached();
    method public boolean isInstantCommunicationModeEnabled();
    field public static final String ACTION_WIFI_AWARE_STATE_CHANGED = "android.net.wifi.aware.action.WIFI_AWARE_STATE_CHANGED";
    field public static final String ACTION_WIFI_AWARE_STATE_CHANGED = "android.net.wifi.aware.action.WIFI_AWARE_STATE_CHANGED";
    field public static final int WIFI_AWARE_DATA_PATH_ROLE_INITIATOR = 0; // 0x0
    field public static final int WIFI_AWARE_DATA_PATH_ROLE_INITIATOR = 0; // 0x0
    field public static final int WIFI_AWARE_DATA_PATH_ROLE_RESPONDER = 1; // 0x1
    field public static final int WIFI_AWARE_DATA_PATH_ROLE_RESPONDER = 1; // 0x1
+4 −0
Original line number Original line Diff line number Diff line
@@ -800,6 +800,10 @@ package android.net.wifi.aware {
    method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPmk(@NonNull android.net.wifi.aware.PeerHandle, @NonNull byte[]);
    method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPmk(@NonNull android.net.wifi.aware.PeerHandle, @NonNull byte[]);
  }
  }


  public class WifiAwareManager {
    method public void enableInstantCommunicationMode(boolean);
  }

  public class WifiAwareSession implements java.lang.AutoCloseable {
  public class WifiAwareSession implements java.lang.AutoCloseable {
    method public android.net.NetworkSpecifier createNetworkSpecifierPmk(int, @NonNull byte[], @NonNull byte[]);
    method public android.net.NetworkSpecifier createNetworkSpecifierPmk(int, @NonNull byte[], @NonNull byte[]);
  }
  }
+15 −0
Original line number Original line Diff line number Diff line
@@ -17,6 +17,7 @@
package android.net.wifi.aware;
package android.net.wifi.aware;


import android.annotation.IntDef;
import android.annotation.IntDef;
import android.net.wifi.util.SdkLevelUtil;
import android.os.Bundle;
import android.os.Bundle;
import android.os.Parcel;
import android.os.Parcel;
import android.os.Parcelable;
import android.os.Parcelable;
@@ -37,6 +38,9 @@ public final class Characteristics implements Parcelable {
    public static final String KEY_MAX_MATCH_FILTER_LENGTH = "key_max_match_filter_length";
    public static final String KEY_MAX_MATCH_FILTER_LENGTH = "key_max_match_filter_length";
    /** @hide */
    /** @hide */
    public static final String KEY_SUPPORTED_CIPHER_SUITES = "key_supported_cipher_suites";
    public static final String KEY_SUPPORTED_CIPHER_SUITES = "key_supported_cipher_suites";
    /** @hide */
    public static final String KEY_IS_INSTANT_COMMUNICATION_MODE_SUPPORTED =
            "key_is_instant_communication_mode_supported";


    private Bundle mCharacteristics = new Bundle();
    private Bundle mCharacteristics = new Bundle();


@@ -83,6 +87,17 @@ public final class Characteristics implements Parcelable {
        return mCharacteristics.getInt(KEY_MAX_MATCH_FILTER_LENGTH);
        return mCharacteristics.getInt(KEY_MAX_MATCH_FILTER_LENGTH);
    }
    }


    /**
     * Check if instant communication mode is supported by device.
     * @return True if supported, false otherwise.
     */
    public boolean isInstantCommunicationModeSupported() {
        if (!SdkLevelUtil.isAtLeastS()) {
            throw new UnsupportedOperationException();
        }
        return mCharacteristics.getBoolean(KEY_IS_INSTANT_COMMUNICATION_MODE_SUPPORTED);
    }

    /** @hide */
    /** @hide */
    @IntDef(flag = true, prefix = { "WIFI_AWARE_CIPHER_SUITE_" }, value = {
    @IntDef(flag = true, prefix = { "WIFI_AWARE_CIPHER_SUITE_" }, value = {
            WIFI_AWARE_CIPHER_SUITE_NCS_SK_128,
            WIFI_AWARE_CIPHER_SUITE_NCS_SK_128,
Loading