summaryrefslogtreecommitdiffstats
path: root/core/java/android
diff options
context:
space:
mode:
authorfredc <fredc@broadcom.com>2012-05-09 16:52:50 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-07-16 21:28:12 -0700
commitbf072a712f584ae1c01022835b0de21c40513d06 (patch)
treeca02907919a6fc53d048f20059960f68062a314b /core/java/android
parentc2f5cc50f70bbb82729659f72e1491de137f7fe2 (diff)
downloadframeworks_base-bf072a712f584ae1c01022835b0de21c40513d06.zip
frameworks_base-bf072a712f584ae1c01022835b0de21c40513d06.tar.gz
frameworks_base-bf072a712f584ae1c01022835b0de21c40513d06.tar.bz2
Moved BluetoothAdapter.ACTION_STATE_CHANGED broadcast from AdapterService to BluetoothManagerService
Change-Id: I88e5f3fe050cf11eae9c5cf1b7c393a178b8f9b1
Diffstat (limited to 'core/java/android')
-rwxr-xr-xcore/java/android/bluetooth/BluetoothAdapter.java19
-rw-r--r--core/java/android/bluetooth/IBluetooth.aidl3
-rw-r--r--core/java/android/bluetooth/IBluetoothCallback.aidl3
3 files changed, 16 insertions, 9 deletions
diff --git a/core/java/android/bluetooth/BluetoothAdapter.java b/core/java/android/bluetooth/BluetoothAdapter.java
index c08705c..dc18029 100755
--- a/core/java/android/bluetooth/BluetoothAdapter.java
+++ b/core/java/android/bluetooth/BluetoothAdapter.java
@@ -464,12 +464,15 @@ public final class BluetoothAdapter {
synchronized(mManagerCallback) {
if (mService != null)
{
- return mService.getState();
+ int state= mService.getState();
+ if (DBG) Log.d(TAG, "" + hashCode() + ": getState(). Returning " + state);
+ return state;
}
// TODO(BT) there might be a small gap during STATE_TURNING_ON that
// mService is null, handle that case
}
} catch (RemoteException e) {Log.e(TAG, "", e);}
+ if (DBG) Log.d(TAG, "" + hashCode() + ": getState() : mService = null. Returning STATE_OFF");
return STATE_OFF;
}
@@ -1208,7 +1211,7 @@ public final class BluetoothAdapter {
if (DBG) Log.d(TAG, "onBluetoothServiceUp: " + bluetoothService);
synchronized (mManagerCallback) {
mService = bluetoothService;
- for (IBluetoothManagerCallback cb : mBluetoothManagerCallbackList ){
+ for (IBluetoothManagerCallback cb : mProxyServiceStateCallbacks ){
try {
if (cb != null) {
cb.onBluetoothServiceUp(bluetoothService);
@@ -1224,7 +1227,7 @@ public final class BluetoothAdapter {
if (DBG) Log.d(TAG, "onBluetoothServiceDown: " + mService);
synchronized (mManagerCallback) {
mService = null;
- for (IBluetoothManagerCallback cb : mBluetoothManagerCallbackList ){
+ for (IBluetoothManagerCallback cb : mProxyServiceStateCallbacks ){
try {
if (cb != null) {
cb.onBluetoothServiceDown();
@@ -1368,14 +1371,14 @@ public final class BluetoothAdapter {
return mManagerService;
}
- private ArrayList<IBluetoothManagerCallback> mBluetoothManagerCallbackList = new ArrayList<IBluetoothManagerCallback>();
+ private ArrayList<IBluetoothManagerCallback> mProxyServiceStateCallbacks = new ArrayList<IBluetoothManagerCallback>();
/*package*/ IBluetooth getBluetoothService(IBluetoothManagerCallback cb) {
synchronized (mManagerCallback) {
if (cb == null) {
- Log.w(TAG, "Unable to register null state change callback", new Exception());
- } else if (!mBluetoothManagerCallbackList.contains(cb)) {
- mBluetoothManagerCallbackList.add(cb);
+ Log.w(TAG, "getBluetoothService() called with no BluetoothManagerCallback");
+ } else if (!mProxyServiceStateCallbacks.contains(cb)) {
+ mProxyServiceStateCallbacks.add(cb);
}
}
return mService;
@@ -1383,7 +1386,7 @@ public final class BluetoothAdapter {
/*package*/ void removeServiceStateCallback(IBluetoothManagerCallback cb) {
synchronized (mManagerCallback) {
- mBluetoothManagerCallbackList.remove(cb);
+ mProxyServiceStateCallbacks.remove(cb);
}
}
}
diff --git a/core/java/android/bluetooth/IBluetooth.aidl b/core/java/android/bluetooth/IBluetooth.aidl
index 9653de2..eff780d 100644
--- a/core/java/android/bluetooth/IBluetooth.aidl
+++ b/core/java/android/bluetooth/IBluetooth.aidl
@@ -72,6 +72,9 @@ interface IBluetooth
void sendConnectionStateChange(in BluetoothDevice device, int profile, int state, int prevState);
+ void registerCallback(in IBluetoothCallback callback);
+ void unregisterCallback(in IBluetoothCallback callback);
+
// For Socket
ParcelFileDescriptor connectSocket(in BluetoothDevice device, int type, in ParcelUuid uuid, int port, int flag);
ParcelFileDescriptor createSocketChannel(int type, in String serviceName, in ParcelUuid uuid, int port, int flag);
diff --git a/core/java/android/bluetooth/IBluetoothCallback.aidl b/core/java/android/bluetooth/IBluetoothCallback.aidl
index 8edb3f4..e280978 100644
--- a/core/java/android/bluetooth/IBluetoothCallback.aidl
+++ b/core/java/android/bluetooth/IBluetoothCallback.aidl
@@ -23,5 +23,6 @@ package android.bluetooth;
*/
interface IBluetoothCallback
{
- void onRfcommChannelFound(int channel);
+ //void onRfcommChannelFound(int channel);
+ void onBluetoothStateChange(int prevState, int newState);
}