method @RequiresPermission(android.Manifest.permission.BLUETOOTH_PRIVILEGED) public int getBluetoothHciSnoopLoggingMode();
method public int getConnectionState();
method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public long getDiscoveryEndMillis();
method @Nullable @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public android.bluetooth.le.DistanceMeasurementManager getDistanceMeasurementManager();
method @NonNull @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public java.util.List<android.bluetooth.BluetoothDevice> getMostRecentlyConnectedDevices();
method @NonNull @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public android.os.Bundle getPreferredAudioProfiles(@NonNull android.bluetooth.BluetoothDevice);
method @NonNull @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public java.util.List<java.lang.Integer> getSupportedProfiles();
method @NonNull @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public java.util.List<android.os.ParcelUuid> getUuidsList();
method public boolean isBleScanAlwaysAvailable();
method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public int isDistanceMeasurementSupported();
method public boolean isLeEnabled();
method @NonNull public static String nameForState(int);
method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public int notifyPreferredAudioProfileChangeApplied(@NonNull android.bluetooth.BluetoothDevice);
@@ -754,6 +756,7 @@ package android.bluetooth {
public final class BluetoothStatusCodes {
field public static final int ALLOWED = 400; // 0x190
field public static final int DISTANCE_MEASUREMENT_ERROR_INTERNAL = 1301; // 0x515
field public static final int ERROR_ALREADY_IN_TARGET_STATE = 26; // 0x1a
field public static final int ERROR_ANOTHER_ACTIVE_OOB_REQUEST = 1000; // 0x3e8
field public static final int ERROR_ANOTHER_ACTIVE_REQUEST = 29; // 0x1d
@@ -779,6 +782,7 @@ package android.bluetooth {
field public static final int ERROR_LOCAL_NOT_ENOUGH_RESOURCES = 22; // 0x16
field public static final int ERROR_NOT_ACTIVE_DEVICE = 12; // 0xc
field public static final int ERROR_NO_ACTIVE_DEVICES = 13; // 0xd
field public static final int ERROR_NO_LE_CONNECTION = 1300; // 0x514
field public static final int ERROR_PROFILE_NOT_CONNECTED = 14; // 0xe
field public static final int ERROR_REMOTE_LINK_ERROR = 25; // 0x19
field public static final int ERROR_REMOTE_NOT_ENOUGH_RESOURCES = 23; // 0x17
public final class DistanceMeasurementMethod implements android.os.Parcelable {
method public double getId();
method public boolean isAltitudeAngleSupported();
method public boolean isAzimuthAngleSupported();
field @NonNull public static final android.os.Parcelable.Creator<android.bluetooth.le.DistanceMeasurementMethod> CREATOR;
field public static final int DISTANCE_MEASUREMENT_METHOD_AUTO = 0; // 0x0
field public static final int DISTANCE_MEASUREMENT_METHOD_RSSI = 1; // 0x1
}
public static final class DistanceMeasurementMethod.Builder {
ctor public DistanceMeasurementMethod.Builder(int);
method @NonNull public android.bluetooth.le.DistanceMeasurementMethod build();
method @NonNull public android.bluetooth.le.DistanceMeasurementMethod.Builder setAltitudeAngleSupported(boolean);
method @NonNull public android.bluetooth.le.DistanceMeasurementMethod.Builder setAzimuthAngleSupported(boolean);
}
public final class DistanceMeasurementParams implements android.os.Parcelable {
method public static int getDefaultDuration();
method @NonNull public android.bluetooth.BluetoothDevice getDevice();
method public int getDuration();
method public int getFrequency();
method public static int getMaxDuration();
method public int getMethod();
field @NonNull public static final android.os.Parcelable.Creator<android.bluetooth.le.DistanceMeasurementParams> CREATOR;
field public static final int REPORT_FREQUENCY_HIGH = 2; // 0x2
field public static final int REPORT_FREQUENCY_LOW = 0; // 0x0
field public static final int REPORT_FREQUENCY_MEDIUM = 1; // 0x1
}
public static final class DistanceMeasurementParams.Builder {
ctor public DistanceMeasurementParams.Builder(@NonNull android.bluetooth.BluetoothDevice);
method @NonNull public android.bluetooth.le.DistanceMeasurementParams build();
method @NonNull public android.bluetooth.le.DistanceMeasurementParams.Builder setDuration(@IntRange(from=0, to=3600) int);
method @NonNull public android.bluetooth.le.DistanceMeasurementParams.Builder setFrequency(int);
method @NonNull public android.bluetooth.le.DistanceMeasurementParams.Builder setMethod(int);
}
public final class DistanceMeasurementResult implements android.os.Parcelable {
method @FloatRange(from=-90.0, to=90.0) public double getAltitudeAngle();
method @FloatRange(from=0.0, to=360.0) public double getAzimuthAngle();
method public double getErrorAltitudeAngle();
method public double getErrorAzimuthAngle();
method @FloatRange(from=0.0) public double getErrorMeters();
method public double getMeters();
field @NonNull public static final android.os.Parcelable.Creator<android.bluetooth.le.DistanceMeasurementResult> CREATOR;
}
public static final class DistanceMeasurementResult.Builder {
ctor public DistanceMeasurementResult.Builder(@FloatRange(from=0.0) double, @FloatRange(from=0.0) double);
method @NonNull public android.bluetooth.le.DistanceMeasurementResult build();
method @NonNull public android.bluetooth.le.DistanceMeasurementResult.Builder setAltitudeAngle(@FloatRange(from=-90.0, to=90.0) double);
method @NonNull public android.bluetooth.le.DistanceMeasurementResult.Builder setAzimuthAngle(@FloatRange(from=0.0, to=360.0) double);
method @NonNull public android.bluetooth.le.DistanceMeasurementResult.Builder setErrorAltitudeAngle(@FloatRange(from=0.0, to=180.0) double);
method @NonNull public android.bluetooth.le.DistanceMeasurementResult.Builder setErrorAzimuthAngle(@FloatRange(from=0.0, to=360.0) double);
}
public final class DistanceMeasurementSession {
method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_PRIVILEGED}) public int stopSession();
}
public static interface DistanceMeasurementSession.Callback {
method public void onResult(@NonNull android.bluetooth.BluetoothDevice, @NonNull android.bluetooth.le.DistanceMeasurementResult);
method public void onStartFail(@NonNull int);
method public void onStarted(@NonNull android.bluetooth.le.DistanceMeasurementSession);
method public void onStopped(@NonNull android.bluetooth.le.DistanceMeasurementSession, @NonNull int);
}
@Deprecated public final class ResultStorageDescriptor implements android.os.Parcelable {
ctor @Deprecated public ResultStorageDescriptor(int, int, int);