Merge changes I8f5a756a,I2bac468f,I043dfefa,I2c55f96e into oc-dev
* changes: Bluetooth: expand comments on new PHY constants Bluetooth: document status value in PHY read/update Bluetooth: Add handler parameter to connectGatt Get rid of the IAdvertiserCallabck
This commit is contained in:
committed by
Android (Google) Code Review
commit
5df218c5c4
@@ -143,7 +143,6 @@ LOCAL_SRC_FILES += \
|
||||
core/java/android/bluetooth/IBluetoothGatt.aidl \
|
||||
core/java/android/bluetooth/IBluetoothGattCallback.aidl \
|
||||
core/java/android/bluetooth/IBluetoothGattServerCallback.aidl \
|
||||
core/java/android/bluetooth/le/IAdvertiserCallback.aidl \
|
||||
core/java/android/bluetooth/le/IAdvertisingSetCallback.aidl \
|
||||
core/java/android/bluetooth/le/IPeriodicAdvertisingCallback.aidl \
|
||||
core/java/android/bluetooth/le/IScannerCallback.aidl \
|
||||
|
||||
@@ -7600,6 +7600,7 @@ package android.bluetooth {
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback);
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback, int);
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback, int, int);
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback, int, int, android.os.Handler);
|
||||
method public boolean createBond();
|
||||
method public android.bluetooth.BluetoothSocket createInsecureRfcommSocketToServiceRecord(java.util.UUID) throws java.io.IOException;
|
||||
method public android.bluetooth.BluetoothSocket createRfcommSocketToServiceRecord(java.util.UUID) throws java.io.IOException;
|
||||
|
||||
@@ -8073,6 +8073,7 @@ package android.bluetooth {
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback);
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback, int);
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback, int, int);
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback, int, int, android.os.Handler);
|
||||
method public boolean createBond();
|
||||
method public android.bluetooth.BluetoothSocket createInsecureRfcommSocketToServiceRecord(java.util.UUID) throws java.io.IOException;
|
||||
method public android.bluetooth.BluetoothSocket createRfcommSocketToServiceRecord(java.util.UUID) throws java.io.IOException;
|
||||
|
||||
@@ -7631,6 +7631,7 @@ package android.bluetooth {
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback);
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback, int);
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback, int, int);
|
||||
method public android.bluetooth.BluetoothGatt connectGatt(android.content.Context, boolean, android.bluetooth.BluetoothGattCallback, int, int, android.os.Handler);
|
||||
method public boolean createBond();
|
||||
method public android.bluetooth.BluetoothSocket createInsecureRfcommSocketToServiceRecord(java.util.UUID) throws java.io.IOException;
|
||||
method public android.bluetooth.BluetoothSocket createRfcommSocketToServiceRecord(java.util.UUID) throws java.io.IOException;
|
||||
|
||||
@@ -22,6 +22,8 @@ import android.annotation.SdkConstant;
|
||||
import android.annotation.SdkConstant.SdkConstantType;
|
||||
import android.annotation.SystemApi;
|
||||
import android.content.Context;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
import android.os.ParcelUuid;
|
||||
@@ -593,32 +595,38 @@ public final class BluetoothDevice implements Parcelable {
|
||||
public static final int TRANSPORT_LE = 2;
|
||||
|
||||
/**
|
||||
* Bluetooth LE 1M PHY.
|
||||
* Bluetooth LE 1M PHY. Used to refer to LE 1M Physical Channel for advertising, scanning or
|
||||
* connection.
|
||||
*/
|
||||
public static final int PHY_LE_1M = 1;
|
||||
|
||||
/**
|
||||
* Bluetooth LE 2M PHY.
|
||||
* Bluetooth LE 2M PHY. Used to refer to LE 2M Physical Channel for advertising, scanning or
|
||||
* connection.
|
||||
*/
|
||||
public static final int PHY_LE_2M = 2;
|
||||
|
||||
/**
|
||||
* Bluetooth LE Coded PHY.
|
||||
* Bluetooth LE Coded PHY. Used to refer to LE Coded Physical Channel for advertising, scanning
|
||||
* or connection.
|
||||
*/
|
||||
public static final int PHY_LE_CODED = 3;
|
||||
|
||||
/**
|
||||
* Bluetooth LE 1M PHY mask.
|
||||
* Bluetooth LE 1M PHY mask. Used to specify LE 1M Physical Channel as one of many available
|
||||
* options in a bitmask.
|
||||
*/
|
||||
public static final int PHY_LE_1M_MASK = 1;
|
||||
|
||||
/**
|
||||
* Bluetooth LE 2M PHY mask.
|
||||
* Bluetooth LE 2M PHY mask. Used to specify LE 2M Physical Channel as one of many available
|
||||
* options in a bitmask.
|
||||
*/
|
||||
public static final int PHY_LE_2M_MASK = 2;
|
||||
|
||||
/**
|
||||
* Bluetooth LE Coded PHY mask.
|
||||
* Bluetooth LE Coded PHY mask. Used to specify LE Coded Physical Channel as one of many
|
||||
* available options in a bitmask.
|
||||
*/
|
||||
public static final int PHY_LE_CODED_MASK = 4;
|
||||
|
||||
@@ -1668,12 +1676,45 @@ public final class BluetoothDevice implements Parcelable {
|
||||
* {@link BluetoothDevice#TRANSPORT_BREDR} or {@link BluetoothDevice#TRANSPORT_LE}
|
||||
* @param phy preferred PHY for connections to remote LE device. Bitwise OR of any of
|
||||
* {@link BluetoothDevice#PHY_LE_1M_MASK}, {@link BluetoothDevice#PHY_LE_2M_MASK},
|
||||
* and {@link BluetoothDevice#PHY_LE_CODED_MASK}. This option does not take effect if
|
||||
* {@code autoConnect} is set to true.
|
||||
* @throws IllegalArgumentException if callback is null
|
||||
* and {@link BluetoothDevice#PHY_LE_CODED_MASK}. This option does not take effect
|
||||
* if {@code autoConnect} is set to true.
|
||||
* @throws NullPointerException if callback is null
|
||||
*/
|
||||
public BluetoothGatt connectGatt(Context context, boolean autoConnect,
|
||||
BluetoothGattCallback callback, int transport, int phy) {
|
||||
return connectGatt(context, autoConnect,callback, TRANSPORT_AUTO, PHY_LE_1M_MASK, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Connect to GATT Server hosted by this device. Caller acts as GATT client.
|
||||
* The callback is used to deliver results to Caller, such as connection status as well
|
||||
* as any further GATT client operations.
|
||||
* The method returns a BluetoothGatt instance. You can use BluetoothGatt to conduct
|
||||
* GATT client operations.
|
||||
* @param callback GATT callback handler that will receive asynchronous callbacks.
|
||||
* @param autoConnect Whether to directly connect to the remote device (false)
|
||||
* or to automatically connect as soon as the remote
|
||||
* device becomes available (true).
|
||||
* @param transport preferred transport for GATT connections to remote dual-mode devices
|
||||
* {@link BluetoothDevice#TRANSPORT_AUTO} or
|
||||
* {@link BluetoothDevice#TRANSPORT_BREDR} or {@link BluetoothDevice#TRANSPORT_LE}
|
||||
* @param phy preferred PHY for connections to remote LE device. Bitwise OR of any of
|
||||
* {@link BluetoothDevice#PHY_LE_1M_MASK}, {@link BluetoothDevice#PHY_LE_2M_MASK},
|
||||
* an d{@link BluetoothDevice#PHY_LE_CODED_MASK}. This option does not take effect
|
||||
* if {@code autoConnect} is set to true.
|
||||
* @param handler The handler to use for the callback. If {@code null}, callbacks will happen
|
||||
* on the service's main thread.
|
||||
* @throws NullPointerException if callback is null
|
||||
*/
|
||||
public BluetoothGatt connectGatt(Context context, boolean autoConnect,
|
||||
BluetoothGattCallback callback, int transport, int phy,
|
||||
Handler handler) {
|
||||
if (callback == null)
|
||||
throw new NullPointerException("callback is null");
|
||||
|
||||
if (handler == null)
|
||||
handler = new Handler(Looper.getMainLooper());
|
||||
|
||||
// TODO(Bluetooth) check whether platform support BLE
|
||||
// Do the check here or in GattServer?
|
||||
BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
|
||||
@@ -1685,7 +1726,7 @@ public final class BluetoothDevice implements Parcelable {
|
||||
return null;
|
||||
}
|
||||
BluetoothGatt gatt = new BluetoothGatt(iGatt, this, transport, phy);
|
||||
gatt.connect(autoConnect, callback);
|
||||
gatt.connect(autoConnect, callback, handler);
|
||||
return gatt;
|
||||
} catch (RemoteException e) {Log.e(TAG, "", e);}
|
||||
return null;
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
package android.bluetooth;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Handler;
|
||||
import android.os.ParcelUuid;
|
||||
import android.os.RemoteException;
|
||||
import android.util.Log;
|
||||
@@ -43,6 +44,7 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
|
||||
private IBluetoothGatt mService;
|
||||
private BluetoothGattCallback mCallback;
|
||||
private Handler mHandler;
|
||||
private int mClientIf;
|
||||
private BluetoothDevice mDevice;
|
||||
private boolean mAutoConnect;
|
||||
@@ -154,8 +156,14 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
}
|
||||
mClientIf = clientIf;
|
||||
if (status != GATT_SUCCESS) {
|
||||
mCallback.onConnectionStateChange(BluetoothGatt.this, GATT_FAILURE,
|
||||
BluetoothProfile.STATE_DISCONNECTED);
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onConnectionStateChange(BluetoothGatt.this, GATT_FAILURE,
|
||||
BluetoothProfile.STATE_DISCONNECTED);
|
||||
}
|
||||
});
|
||||
|
||||
synchronized(mStateLock) {
|
||||
mConnState = CONN_STATE_IDLE;
|
||||
}
|
||||
@@ -181,11 +189,12 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
mCallback.onPhyUpdate(BluetoothGatt.this, txPhy, rxPhy, status);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onPhyUpdate(BluetoothGatt.this, txPhy, rxPhy, status);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -200,11 +209,12 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
mCallback.onPhyRead(BluetoothGatt.this, txPhy, rxPhy, status);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onPhyRead(BluetoothGatt.this, txPhy, rxPhy, status);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -221,11 +231,13 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
}
|
||||
int profileState = connected ? BluetoothProfile.STATE_CONNECTED :
|
||||
BluetoothProfile.STATE_DISCONNECTED;
|
||||
try {
|
||||
mCallback.onConnectionStateChange(BluetoothGatt.this, status, profileState);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onConnectionStateChange(BluetoothGatt.this, status, profileState);
|
||||
}
|
||||
});
|
||||
|
||||
synchronized(mStateLock) {
|
||||
if (connected) {
|
||||
@@ -279,11 +291,12 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
mCallback.onServicesDiscovered(BluetoothGatt.this, status);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onServicesDiscovered(BluetoothGatt.this, status);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -328,11 +341,12 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
|
||||
if (status == 0) characteristic.setValue(value);
|
||||
|
||||
try {
|
||||
mCallback.onCharacteristicRead(BluetoothGatt.this, characteristic, status);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onCharacteristicRead(BluetoothGatt.this, characteristic, status);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -373,11 +387,12 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
|
||||
mAuthRetryState = AUTH_RETRY_STATE_IDLE;
|
||||
|
||||
try {
|
||||
mCallback.onCharacteristicWrite(BluetoothGatt.this, characteristic, status);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onCharacteristicWrite(BluetoothGatt.this, characteristic, status);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -398,11 +413,12 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
|
||||
characteristic.setValue(value);
|
||||
|
||||
try {
|
||||
mCallback.onCharacteristicChanged(BluetoothGatt.this, characteristic);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onCharacteristicChanged(BluetoothGatt.this, characteristic);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -442,11 +458,12 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
|
||||
mAuthRetryState = AUTH_RETRY_STATE_IDLE;
|
||||
|
||||
try {
|
||||
mCallback.onDescriptorRead(BluetoothGatt.this, descriptor, status);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onDescriptorRead(BluetoothGatt.this, descriptor, status);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -485,11 +502,12 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
|
||||
mAuthRetryState = AUTH_RETRY_STATE_IDLE;
|
||||
|
||||
try {
|
||||
mCallback.onDescriptorWrite(BluetoothGatt.this, descriptor, status);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onDescriptorWrite(BluetoothGatt.this, descriptor, status);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -508,11 +526,12 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
mDeviceBusy = false;
|
||||
}
|
||||
|
||||
try {
|
||||
mCallback.onReliableWriteCompleted(BluetoothGatt.this, status);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onReliableWriteCompleted(BluetoothGatt.this, status);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -526,11 +545,12 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
if (!address.equals(mDevice.getAddress())) {
|
||||
return;
|
||||
}
|
||||
try {
|
||||
mCallback.onReadRemoteRssi(BluetoothGatt.this, rssi, status);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onReadRemoteRssi(BluetoothGatt.this, rssi, status);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -544,11 +564,13 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
if (!address.equals(mDevice.getAddress())) {
|
||||
return;
|
||||
}
|
||||
try {
|
||||
mCallback.onMtuChanged(BluetoothGatt.this, mtu, status);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onMtuChanged(BluetoothGatt.this, mtu, status);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -564,12 +586,14 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
if (!address.equals(mDevice.getAddress())) {
|
||||
return;
|
||||
}
|
||||
try {
|
||||
mCallback.onConnectionUpdated(BluetoothGatt.this, interval, latency,
|
||||
timeout, status);
|
||||
} catch (Exception ex) {
|
||||
Log.w(TAG, "Unhandled exception in callback", ex);
|
||||
}
|
||||
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mCallback.onConnectionUpdated(BluetoothGatt.this, interval, latency,
|
||||
timeout, status);
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
@@ -659,11 +683,12 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
* @return If true, the callback will be called to notify success or failure,
|
||||
* false on immediate error
|
||||
*/
|
||||
private boolean registerApp(BluetoothGattCallback callback) {
|
||||
private boolean registerApp(BluetoothGattCallback callback, Handler handler) {
|
||||
if (DBG) Log.d(TAG, "registerApp()");
|
||||
if (mService == null) return false;
|
||||
|
||||
mCallback = callback;
|
||||
mHandler = handler;
|
||||
UUID uuid = UUID.randomUUID();
|
||||
if (DBG) Log.d(TAG, "registerApp() - UUID=" + uuid);
|
||||
|
||||
@@ -716,7 +741,8 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
* device becomes available (true).
|
||||
* @return true, if the connection attempt was initiated successfully
|
||||
*/
|
||||
/*package*/ boolean connect(Boolean autoConnect, BluetoothGattCallback callback) {
|
||||
/*package*/ boolean connect(Boolean autoConnect, BluetoothGattCallback callback,
|
||||
Handler handler) {
|
||||
if (DBG) Log.d(TAG, "connect() - device: " + mDevice.getAddress() + ", auto: " + autoConnect);
|
||||
synchronized(mStateLock) {
|
||||
if (mConnState != CONN_STATE_IDLE) {
|
||||
@@ -727,7 +753,7 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
|
||||
mAutoConnect = autoConnect;
|
||||
|
||||
if (!registerApp(callback)) {
|
||||
if (!registerApp(callback, handler)) {
|
||||
synchronized(mStateLock) {
|
||||
mConnState = CONN_STATE_IDLE;
|
||||
}
|
||||
|
||||
@@ -30,7 +30,8 @@ public abstract class BluetoothGattCallback{
|
||||
* {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED}.
|
||||
* @param rxPhy the receiver PHY in use. One of {@link BluetoothDevice#PHY_LE_1M},
|
||||
* {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED}.
|
||||
* @param status status of the operation
|
||||
* @param status Status of the PHY update operation.
|
||||
* {@link BluetoothGatt#GATT_SUCCESS} if the operation succeeds.
|
||||
*/
|
||||
public void onPhyUpdate(BluetoothGatt gatt, int txPhy, int rxPhy, int status) {
|
||||
}
|
||||
@@ -43,7 +44,8 @@ public abstract class BluetoothGattCallback{
|
||||
* {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED}.
|
||||
* @param rxPhy the receiver PHY in use. One of {@link BluetoothDevice#PHY_LE_1M},
|
||||
* {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED}.
|
||||
* @param status status of the operation
|
||||
* @param status Status of the PHY read operation.
|
||||
* {@link BluetoothGatt#GATT_SUCCESS} if the operation succeeds.
|
||||
*/
|
||||
public void onPhyRead(BluetoothGatt gatt, int txPhy, int rxPhy, int status) {
|
||||
}
|
||||
|
||||
@@ -167,7 +167,8 @@ public abstract class BluetoothGattServerCallback {
|
||||
* {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED}
|
||||
* @param rxPhy the receiver PHY in use. One of {@link BluetoothDevice#PHY_LE_1M},
|
||||
* {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED}
|
||||
* @param status status of the operation
|
||||
* @param status Status of the PHY update operation.
|
||||
* {@link BluetoothGatt#GATT_SUCCESS} if the operation succeeds.
|
||||
*/
|
||||
public void onPhyUpdate(BluetoothDevice device, int txPhy, int rxPhy, int status) {
|
||||
}
|
||||
@@ -180,7 +181,8 @@ public abstract class BluetoothGattServerCallback {
|
||||
* {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED}
|
||||
* @param rxPhy the receiver PHY in use. One of {@link BluetoothDevice#PHY_LE_1M},
|
||||
* {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED}
|
||||
* @param status status of the operation
|
||||
* @param status Status of the PHY read operation.
|
||||
* {@link BluetoothGatt#GATT_SUCCESS} if the operation succeeds.
|
||||
*/
|
||||
public void onPhyRead(BluetoothDevice device, int txPhy, int rxPhy, int status) {
|
||||
}
|
||||
|
||||
@@ -32,7 +32,6 @@ import android.os.WorkSource;
|
||||
|
||||
import android.bluetooth.IBluetoothGattCallback;
|
||||
import android.bluetooth.IBluetoothGattServerCallback;
|
||||
import android.bluetooth.le.IAdvertiserCallback;
|
||||
import android.bluetooth.le.IAdvertisingSetCallback;
|
||||
import android.bluetooth.le.IPeriodicAdvertisingCallback;
|
||||
import android.bluetooth.le.IScannerCallback;
|
||||
|
||||
@@ -22,7 +22,6 @@ import android.bluetooth.BluetoothGatt;
|
||||
import android.bluetooth.BluetoothUuid;
|
||||
import android.bluetooth.IBluetoothGatt;
|
||||
import android.bluetooth.IBluetoothManager;
|
||||
import android.bluetooth.le.IAdvertiserCallback;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.os.ParcelUuid;
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2016 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package android.bluetooth.le;
|
||||
|
||||
import android.bluetooth.le.AdvertiseSettings;
|
||||
|
||||
/**
|
||||
* Callback definitions for interacting with Advertiser
|
||||
* @hide
|
||||
*/
|
||||
oneway interface IAdvertiserCallback {
|
||||
void onAdvertiserRegistered(in int status, in int advertiserId);
|
||||
|
||||
void onMultiAdvertiseCallback(in int status, boolean isStart,
|
||||
in AdvertiseSettings advertiseSettings);
|
||||
}
|
||||
Reference in New Issue
Block a user