am 3ca77ccf: am 455502b7: Merge "Add API to check if a Bluetooth connection is encrypted (1/2)" into lmp-mr1-dev
* commit '3ca77ccf873f12e116a66d1c1a417fe89f75af85': Add API to check if a Bluetooth connection is encrypted (1/2)
This commit is contained in:
@@ -6417,6 +6417,8 @@ package android.bluetooth {
|
|||||||
method public java.lang.String getName();
|
method public java.lang.String getName();
|
||||||
method public int getType();
|
method public int getType();
|
||||||
method public android.os.ParcelUuid[] getUuids();
|
method public android.os.ParcelUuid[] getUuids();
|
||||||
|
method public boolean isConnected();
|
||||||
|
method public boolean isEncrypted();
|
||||||
method public boolean setPairingConfirmation(boolean);
|
method public boolean setPairingConfirmation(boolean);
|
||||||
method public boolean setPin(byte[]);
|
method public boolean setPin(byte[]);
|
||||||
method public void writeToParcel(android.os.Parcel, int);
|
method public void writeToParcel(android.os.Parcel, int);
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ package android.bluetooth;
|
|||||||
|
|
||||||
import android.annotation.SdkConstant;
|
import android.annotation.SdkConstant;
|
||||||
import android.annotation.SdkConstant.SdkConstantType;
|
import android.annotation.SdkConstant.SdkConstantType;
|
||||||
|
import android.annotation.SystemApi;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
import android.os.Parcelable;
|
import android.os.Parcelable;
|
||||||
@@ -66,6 +67,14 @@ public final class BluetoothDevice implements Parcelable {
|
|||||||
private static final String TAG = "BluetoothDevice";
|
private static final String TAG = "BluetoothDevice";
|
||||||
private static final boolean DBG = false;
|
private static final boolean DBG = false;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Connection state bitmask as returned by getConnectionState.
|
||||||
|
*/
|
||||||
|
private static final int CONNECTION_STATE_DISCONNECTED = 0;
|
||||||
|
private static final int CONNECTION_STATE_CONNECTED = 1;
|
||||||
|
private static final int CONNECTION_STATE_ENCRYPTED_BREDR = 2;
|
||||||
|
private static final int CONNECTION_STATE_ENCRYPTED_LE = 4;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sentinel error value for this class. Guaranteed to not equal any other
|
* Sentinel error value for this class. Guaranteed to not equal any other
|
||||||
* integer constant in this class. Provided as a convenience for functions
|
* integer constant in this class. Provided as a convenience for functions
|
||||||
@@ -940,13 +949,36 @@ public final class BluetoothDevice implements Parcelable {
|
|||||||
* @return True if there is at least one open connection to this device.
|
* @return True if there is at least one open connection to this device.
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
|
@SystemApi
|
||||||
public boolean isConnected() {
|
public boolean isConnected() {
|
||||||
if (sService == null) {
|
if (sService == null) {
|
||||||
// BT is not enabled, we cannot be connected.
|
// BT is not enabled, we cannot be connected.
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
return sService.isConnected(this);
|
return sService.getConnectionState(this) != CONNECTION_STATE_DISCONNECTED;
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
Log.e(TAG, "", e);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns whether there is an open connection to this device
|
||||||
|
* that has been encrypted.
|
||||||
|
* <p>Requires {@link android.Manifest.permission#BLUETOOTH}.
|
||||||
|
*
|
||||||
|
* @return True if there is at least one encrypted connection to this device.
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
@SystemApi
|
||||||
|
public boolean isEncrypted() {
|
||||||
|
if (sService == null) {
|
||||||
|
// BT is not enabled, we cannot be connected.
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
return sService.getConnectionState(this) > CONNECTION_STATE_CONNECTED;
|
||||||
} catch (RemoteException e) {
|
} catch (RemoteException e) {
|
||||||
Log.e(TAG, "", e);
|
Log.e(TAG, "", e);
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ interface IBluetooth
|
|||||||
boolean cancelBondProcess(in BluetoothDevice device);
|
boolean cancelBondProcess(in BluetoothDevice device);
|
||||||
boolean removeBond(in BluetoothDevice device);
|
boolean removeBond(in BluetoothDevice device);
|
||||||
int getBondState(in BluetoothDevice device);
|
int getBondState(in BluetoothDevice device);
|
||||||
boolean isConnected(in BluetoothDevice device);
|
int getConnectionState(in BluetoothDevice device);
|
||||||
|
|
||||||
String getRemoteName(in BluetoothDevice device);
|
String getRemoteName(in BluetoothDevice device);
|
||||||
int getRemoteType(in BluetoothDevice device);
|
int getRemoteType(in BluetoothDevice device);
|
||||||
|
|||||||
Reference in New Issue
Block a user