Loading android/app/lib/mapapi/com/android/bluetooth/mapapi/BluetoothMapEmailProvider.java +1 −0 Original line number Original line Diff line number Diff line Loading @@ -178,6 +178,7 @@ public abstract class BluetoothMapEmailProvider extends ContentProvider { * Generate a message based on the cursor, and write the encoded data to the stream. * Generate a message based on the cursor, and write the encoded data to the stream. */ */ @Override public void writeDataToPipe(ParcelFileDescriptor output, Uri uri, String mimeType, public void writeDataToPipe(ParcelFileDescriptor output, Uri uri, String mimeType, Bundle opts, Cursor c) { Bundle opts, Cursor c) { if (D) Log.d(TAG, "writeDataToPipe(): uri=" + uri.toString() + if (D) Log.d(TAG, "writeDataToPipe(): uri=" + uri.toString() + Loading android/app/src/com/android/bluetooth/BluetoothObexTransport.java +11 −0 Original line number Original line Diff line number Diff line Loading @@ -36,35 +36,44 @@ public class BluetoothObexTransport implements ObexTransport { this.mSocket = socket; this.mSocket = socket; } } @Override public void close() throws IOException { public void close() throws IOException { mSocket.close(); mSocket.close(); } } @Override public DataInputStream openDataInputStream() throws IOException { public DataInputStream openDataInputStream() throws IOException { return new DataInputStream(openInputStream()); return new DataInputStream(openInputStream()); } } @Override public DataOutputStream openDataOutputStream() throws IOException { public DataOutputStream openDataOutputStream() throws IOException { return new DataOutputStream(openOutputStream()); return new DataOutputStream(openOutputStream()); } } @Override public InputStream openInputStream() throws IOException { public InputStream openInputStream() throws IOException { return mSocket.getInputStream(); return mSocket.getInputStream(); } } @Override public OutputStream openOutputStream() throws IOException { public OutputStream openOutputStream() throws IOException { return mSocket.getOutputStream(); return mSocket.getOutputStream(); } } @Override public void connect() throws IOException { public void connect() throws IOException { } } @Override public void create() throws IOException { public void create() throws IOException { } } @Override public void disconnect() throws IOException { public void disconnect() throws IOException { } } @Override public void listen() throws IOException { public void listen() throws IOException { } } Loading @@ -72,6 +81,7 @@ public class BluetoothObexTransport implements ObexTransport { return true; return true; } } @Override public int getMaxTransmitPacketSize() { public int getMaxTransmitPacketSize() { if (mSocket.getConnectionType() != BluetoothSocket.TYPE_L2CAP) { if (mSocket.getConnectionType() != BluetoothSocket.TYPE_L2CAP) { return -1; return -1; Loading @@ -79,6 +89,7 @@ public class BluetoothObexTransport implements ObexTransport { return mSocket.getMaxTransmitPacketSize(); return mSocket.getMaxTransmitPacketSize(); } } @Override public int getMaxReceivePacketSize() { public int getMaxReceivePacketSize() { if (mSocket.getConnectionType() != BluetoothSocket.TYPE_L2CAP) { if (mSocket.getConnectionType() != BluetoothSocket.TYPE_L2CAP) { return -1; return -1; Loading android/app/src/com/android/bluetooth/a2dp/A2dpService.java +21 −0 Original line number Original line Diff line number Diff line Loading @@ -98,14 +98,17 @@ public class A2dpService extends ProfileService { BluetoothUuid.AudioSink BluetoothUuid.AudioSink }; }; @Override protected String getName() { protected String getName() { return TAG; return TAG; } } @Override protected IProfileServiceBinder initBinder() { protected IProfileServiceBinder initBinder() { return new BluetoothA2dpBinder(this); return new BluetoothA2dpBinder(this); } } @Override protected boolean start() { protected boolean start() { mAvrcp = Avrcp.make(this); mAvrcp = Avrcp.make(this); mStateMachine = A2dpStateMachine.make(this, this); mStateMachine = A2dpStateMachine.make(this, this); Loading @@ -119,6 +122,7 @@ public class A2dpService extends ProfileService { return true; return true; } } @Override protected boolean stop() { protected boolean stop() { if (mStateMachine != null) { if (mStateMachine != null) { mStateMachine.doQuit(); mStateMachine.doQuit(); Loading @@ -129,6 +133,7 @@ public class A2dpService extends ProfileService { return true; return true; } } @Override protected boolean cleanup() { protected boolean cleanup() { if (mConnectionStateChangedReceiver != null) { if (mConnectionStateChangedReceiver != null) { unregisterReceiver(mConnectionStateChangedReceiver); unregisterReceiver(mConnectionStateChangedReceiver); Loading Loading @@ -365,95 +370,111 @@ public class A2dpService extends ProfileService { mService = svc; mService = svc; } } @Override public boolean cleanup() { public boolean cleanup() { mService = null; mService = null; return true; return true; } } @Override public boolean connect(BluetoothDevice device) { public boolean connect(BluetoothDevice device) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return false; if (service == null) return false; return service.connect(device); return service.connect(device); } } @Override public boolean disconnect(BluetoothDevice device) { public boolean disconnect(BluetoothDevice device) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return false; if (service == null) return false; return service.disconnect(device); return service.disconnect(device); } } @Override public List<BluetoothDevice> getConnectedDevices() { public List<BluetoothDevice> getConnectedDevices() { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return new ArrayList<BluetoothDevice>(0); if (service == null) return new ArrayList<BluetoothDevice>(0); return service.getConnectedDevices(); return service.getConnectedDevices(); } } @Override public List<BluetoothDevice> getDevicesMatchingConnectionStates(int[] states) { public List<BluetoothDevice> getDevicesMatchingConnectionStates(int[] states) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return new ArrayList<BluetoothDevice>(0); if (service == null) return new ArrayList<BluetoothDevice>(0); return service.getDevicesMatchingConnectionStates(states); return service.getDevicesMatchingConnectionStates(states); } } @Override public int getConnectionState(BluetoothDevice device) { public int getConnectionState(BluetoothDevice device) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return BluetoothProfile.STATE_DISCONNECTED; if (service == null) return BluetoothProfile.STATE_DISCONNECTED; return service.getConnectionState(device); return service.getConnectionState(device); } } @Override public boolean setPriority(BluetoothDevice device, int priority) { public boolean setPriority(BluetoothDevice device, int priority) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return false; if (service == null) return false; return service.setPriority(device, priority); return service.setPriority(device, priority); } } @Override public int getPriority(BluetoothDevice device) { public int getPriority(BluetoothDevice device) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return BluetoothProfile.PRIORITY_UNDEFINED; if (service == null) return BluetoothProfile.PRIORITY_UNDEFINED; return service.getPriority(device); return service.getPriority(device); } } @Override public boolean isAvrcpAbsoluteVolumeSupported() { public boolean isAvrcpAbsoluteVolumeSupported() { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return false; if (service == null) return false; return service.isAvrcpAbsoluteVolumeSupported(); return service.isAvrcpAbsoluteVolumeSupported(); } } @Override public void adjustAvrcpAbsoluteVolume(int direction) { public void adjustAvrcpAbsoluteVolume(int direction) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return; if (service == null) return; service.adjustAvrcpAbsoluteVolume(direction); service.adjustAvrcpAbsoluteVolume(direction); } } @Override public void setAvrcpAbsoluteVolume(int volume) { public void setAvrcpAbsoluteVolume(int volume) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return; if (service == null) return; service.setAvrcpAbsoluteVolume(volume); service.setAvrcpAbsoluteVolume(volume); } } @Override public boolean isA2dpPlaying(BluetoothDevice device) { public boolean isA2dpPlaying(BluetoothDevice device) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return false; if (service == null) return false; return service.isA2dpPlaying(device); return service.isA2dpPlaying(device); } } @Override public BluetoothCodecStatus getCodecStatus() { public BluetoothCodecStatus getCodecStatus() { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return null; if (service == null) return null; return service.getCodecStatus(); return service.getCodecStatus(); } } @Override public void setCodecConfigPreference(BluetoothCodecConfig codecConfig) { public void setCodecConfigPreference(BluetoothCodecConfig codecConfig) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return; if (service == null) return; service.setCodecConfigPreference(codecConfig); service.setCodecConfigPreference(codecConfig); } } @Override public void enableOptionalCodecs() { public void enableOptionalCodecs() { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return; if (service == null) return; service.enableOptionalCodecs(); service.enableOptionalCodecs(); } } @Override public void disableOptionalCodecs() { public void disableOptionalCodecs() { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return; if (service == null) return; Loading android/app/src/com/android/bluetooth/a2dpsink/A2dpSinkService.java +15 −0 Original line number Original line Diff line number Diff line Loading @@ -44,14 +44,17 @@ public class A2dpSinkService extends ProfileService { private A2dpSinkStateMachine mStateMachine; private A2dpSinkStateMachine mStateMachine; private static A2dpSinkService sA2dpSinkService; private static A2dpSinkService sA2dpSinkService; @Override protected String getName() { protected String getName() { return TAG; return TAG; } } @Override protected IProfileServiceBinder initBinder() { protected IProfileServiceBinder initBinder() { return new BluetoothA2dpSinkBinder(this); return new BluetoothA2dpSinkBinder(this); } } @Override protected boolean start() { protected boolean start() { if (DBG) { if (DBG) { Log.d(TAG, "start()"); Log.d(TAG, "start()"); Loading @@ -64,6 +67,7 @@ public class A2dpSinkService extends ProfileService { return true; return true; } } @Override protected boolean stop() { protected boolean stop() { if (DBG) { if (DBG) { Log.d(TAG, "stop()"); Log.d(TAG, "stop()"); Loading @@ -76,6 +80,7 @@ public class A2dpSinkService extends ProfileService { return true; return true; } } @Override protected boolean cleanup() { protected boolean cleanup() { if (mStateMachine!= null) { if (mStateMachine!= null) { mStateMachine.cleanup(); mStateMachine.cleanup(); Loading Loading @@ -260,59 +265,69 @@ public class A2dpSinkService extends ProfileService { mService = svc; mService = svc; } } @Override public boolean cleanup() { public boolean cleanup() { mService = null; mService = null; return true; return true; } } @Override public boolean connect(BluetoothDevice device) { public boolean connect(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return false; if (service == null) return false; return service.connect(device); return service.connect(device); } } @Override public boolean disconnect(BluetoothDevice device) { public boolean disconnect(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return false; if (service == null) return false; return service.disconnect(device); return service.disconnect(device); } } @Override public List<BluetoothDevice> getConnectedDevices() { public List<BluetoothDevice> getConnectedDevices() { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return new ArrayList<BluetoothDevice>(0); if (service == null) return new ArrayList<BluetoothDevice>(0); return service.getConnectedDevices(); return service.getConnectedDevices(); } } @Override public List<BluetoothDevice> getDevicesMatchingConnectionStates(int[] states) { public List<BluetoothDevice> getDevicesMatchingConnectionStates(int[] states) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return new ArrayList<BluetoothDevice>(0); if (service == null) return new ArrayList<BluetoothDevice>(0); return service.getDevicesMatchingConnectionStates(states); return service.getDevicesMatchingConnectionStates(states); } } @Override public int getConnectionState(BluetoothDevice device) { public int getConnectionState(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return BluetoothProfile.STATE_DISCONNECTED; if (service == null) return BluetoothProfile.STATE_DISCONNECTED; return service.getConnectionState(device); return service.getConnectionState(device); } } @Override public boolean isA2dpPlaying(BluetoothDevice device) { public boolean isA2dpPlaying(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return false; if (service == null) return false; return service.isA2dpPlaying(device); return service.isA2dpPlaying(device); } } @Override public boolean setPriority(BluetoothDevice device, int priority) { public boolean setPriority(BluetoothDevice device, int priority) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return false; if (service == null) return false; return service.setPriority(device, priority); return service.setPriority(device, priority); } } @Override public int getPriority(BluetoothDevice device) { public int getPriority(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return BluetoothProfile.PRIORITY_UNDEFINED; if (service == null) return BluetoothProfile.PRIORITY_UNDEFINED; return service.getPriority(device); return service.getPriority(device); } } @Override public BluetoothAudioConfig getAudioConfig(BluetoothDevice device) { public BluetoothAudioConfig getAudioConfig(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return null; if (service == null) return null; Loading android/app/src/com/android/bluetooth/a2dpsink/A2dpSinkStreamHandler.java +1 −0 Original line number Original line Diff line number Diff line Loading @@ -84,6 +84,7 @@ public class A2dpSinkStreamHandler extends Handler { // Focus changes when we are currently holding focus. // Focus changes when we are currently holding focus. private OnAudioFocusChangeListener mAudioFocusListener = new OnAudioFocusChangeListener() { private OnAudioFocusChangeListener mAudioFocusListener = new OnAudioFocusChangeListener() { @Override public void onAudioFocusChange(int focusChange) { public void onAudioFocusChange(int focusChange) { if (DBG) { if (DBG) { Log.d(TAG, "onAudioFocusChangeListener focuschange " + focusChange); Log.d(TAG, "onAudioFocusChangeListener focuschange " + focusChange); Loading Loading
android/app/lib/mapapi/com/android/bluetooth/mapapi/BluetoothMapEmailProvider.java +1 −0 Original line number Original line Diff line number Diff line Loading @@ -178,6 +178,7 @@ public abstract class BluetoothMapEmailProvider extends ContentProvider { * Generate a message based on the cursor, and write the encoded data to the stream. * Generate a message based on the cursor, and write the encoded data to the stream. */ */ @Override public void writeDataToPipe(ParcelFileDescriptor output, Uri uri, String mimeType, public void writeDataToPipe(ParcelFileDescriptor output, Uri uri, String mimeType, Bundle opts, Cursor c) { Bundle opts, Cursor c) { if (D) Log.d(TAG, "writeDataToPipe(): uri=" + uri.toString() + if (D) Log.d(TAG, "writeDataToPipe(): uri=" + uri.toString() + Loading
android/app/src/com/android/bluetooth/BluetoothObexTransport.java +11 −0 Original line number Original line Diff line number Diff line Loading @@ -36,35 +36,44 @@ public class BluetoothObexTransport implements ObexTransport { this.mSocket = socket; this.mSocket = socket; } } @Override public void close() throws IOException { public void close() throws IOException { mSocket.close(); mSocket.close(); } } @Override public DataInputStream openDataInputStream() throws IOException { public DataInputStream openDataInputStream() throws IOException { return new DataInputStream(openInputStream()); return new DataInputStream(openInputStream()); } } @Override public DataOutputStream openDataOutputStream() throws IOException { public DataOutputStream openDataOutputStream() throws IOException { return new DataOutputStream(openOutputStream()); return new DataOutputStream(openOutputStream()); } } @Override public InputStream openInputStream() throws IOException { public InputStream openInputStream() throws IOException { return mSocket.getInputStream(); return mSocket.getInputStream(); } } @Override public OutputStream openOutputStream() throws IOException { public OutputStream openOutputStream() throws IOException { return mSocket.getOutputStream(); return mSocket.getOutputStream(); } } @Override public void connect() throws IOException { public void connect() throws IOException { } } @Override public void create() throws IOException { public void create() throws IOException { } } @Override public void disconnect() throws IOException { public void disconnect() throws IOException { } } @Override public void listen() throws IOException { public void listen() throws IOException { } } Loading @@ -72,6 +81,7 @@ public class BluetoothObexTransport implements ObexTransport { return true; return true; } } @Override public int getMaxTransmitPacketSize() { public int getMaxTransmitPacketSize() { if (mSocket.getConnectionType() != BluetoothSocket.TYPE_L2CAP) { if (mSocket.getConnectionType() != BluetoothSocket.TYPE_L2CAP) { return -1; return -1; Loading @@ -79,6 +89,7 @@ public class BluetoothObexTransport implements ObexTransport { return mSocket.getMaxTransmitPacketSize(); return mSocket.getMaxTransmitPacketSize(); } } @Override public int getMaxReceivePacketSize() { public int getMaxReceivePacketSize() { if (mSocket.getConnectionType() != BluetoothSocket.TYPE_L2CAP) { if (mSocket.getConnectionType() != BluetoothSocket.TYPE_L2CAP) { return -1; return -1; Loading
android/app/src/com/android/bluetooth/a2dp/A2dpService.java +21 −0 Original line number Original line Diff line number Diff line Loading @@ -98,14 +98,17 @@ public class A2dpService extends ProfileService { BluetoothUuid.AudioSink BluetoothUuid.AudioSink }; }; @Override protected String getName() { protected String getName() { return TAG; return TAG; } } @Override protected IProfileServiceBinder initBinder() { protected IProfileServiceBinder initBinder() { return new BluetoothA2dpBinder(this); return new BluetoothA2dpBinder(this); } } @Override protected boolean start() { protected boolean start() { mAvrcp = Avrcp.make(this); mAvrcp = Avrcp.make(this); mStateMachine = A2dpStateMachine.make(this, this); mStateMachine = A2dpStateMachine.make(this, this); Loading @@ -119,6 +122,7 @@ public class A2dpService extends ProfileService { return true; return true; } } @Override protected boolean stop() { protected boolean stop() { if (mStateMachine != null) { if (mStateMachine != null) { mStateMachine.doQuit(); mStateMachine.doQuit(); Loading @@ -129,6 +133,7 @@ public class A2dpService extends ProfileService { return true; return true; } } @Override protected boolean cleanup() { protected boolean cleanup() { if (mConnectionStateChangedReceiver != null) { if (mConnectionStateChangedReceiver != null) { unregisterReceiver(mConnectionStateChangedReceiver); unregisterReceiver(mConnectionStateChangedReceiver); Loading Loading @@ -365,95 +370,111 @@ public class A2dpService extends ProfileService { mService = svc; mService = svc; } } @Override public boolean cleanup() { public boolean cleanup() { mService = null; mService = null; return true; return true; } } @Override public boolean connect(BluetoothDevice device) { public boolean connect(BluetoothDevice device) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return false; if (service == null) return false; return service.connect(device); return service.connect(device); } } @Override public boolean disconnect(BluetoothDevice device) { public boolean disconnect(BluetoothDevice device) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return false; if (service == null) return false; return service.disconnect(device); return service.disconnect(device); } } @Override public List<BluetoothDevice> getConnectedDevices() { public List<BluetoothDevice> getConnectedDevices() { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return new ArrayList<BluetoothDevice>(0); if (service == null) return new ArrayList<BluetoothDevice>(0); return service.getConnectedDevices(); return service.getConnectedDevices(); } } @Override public List<BluetoothDevice> getDevicesMatchingConnectionStates(int[] states) { public List<BluetoothDevice> getDevicesMatchingConnectionStates(int[] states) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return new ArrayList<BluetoothDevice>(0); if (service == null) return new ArrayList<BluetoothDevice>(0); return service.getDevicesMatchingConnectionStates(states); return service.getDevicesMatchingConnectionStates(states); } } @Override public int getConnectionState(BluetoothDevice device) { public int getConnectionState(BluetoothDevice device) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return BluetoothProfile.STATE_DISCONNECTED; if (service == null) return BluetoothProfile.STATE_DISCONNECTED; return service.getConnectionState(device); return service.getConnectionState(device); } } @Override public boolean setPriority(BluetoothDevice device, int priority) { public boolean setPriority(BluetoothDevice device, int priority) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return false; if (service == null) return false; return service.setPriority(device, priority); return service.setPriority(device, priority); } } @Override public int getPriority(BluetoothDevice device) { public int getPriority(BluetoothDevice device) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return BluetoothProfile.PRIORITY_UNDEFINED; if (service == null) return BluetoothProfile.PRIORITY_UNDEFINED; return service.getPriority(device); return service.getPriority(device); } } @Override public boolean isAvrcpAbsoluteVolumeSupported() { public boolean isAvrcpAbsoluteVolumeSupported() { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return false; if (service == null) return false; return service.isAvrcpAbsoluteVolumeSupported(); return service.isAvrcpAbsoluteVolumeSupported(); } } @Override public void adjustAvrcpAbsoluteVolume(int direction) { public void adjustAvrcpAbsoluteVolume(int direction) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return; if (service == null) return; service.adjustAvrcpAbsoluteVolume(direction); service.adjustAvrcpAbsoluteVolume(direction); } } @Override public void setAvrcpAbsoluteVolume(int volume) { public void setAvrcpAbsoluteVolume(int volume) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return; if (service == null) return; service.setAvrcpAbsoluteVolume(volume); service.setAvrcpAbsoluteVolume(volume); } } @Override public boolean isA2dpPlaying(BluetoothDevice device) { public boolean isA2dpPlaying(BluetoothDevice device) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return false; if (service == null) return false; return service.isA2dpPlaying(device); return service.isA2dpPlaying(device); } } @Override public BluetoothCodecStatus getCodecStatus() { public BluetoothCodecStatus getCodecStatus() { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return null; if (service == null) return null; return service.getCodecStatus(); return service.getCodecStatus(); } } @Override public void setCodecConfigPreference(BluetoothCodecConfig codecConfig) { public void setCodecConfigPreference(BluetoothCodecConfig codecConfig) { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return; if (service == null) return; service.setCodecConfigPreference(codecConfig); service.setCodecConfigPreference(codecConfig); } } @Override public void enableOptionalCodecs() { public void enableOptionalCodecs() { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return; if (service == null) return; service.enableOptionalCodecs(); service.enableOptionalCodecs(); } } @Override public void disableOptionalCodecs() { public void disableOptionalCodecs() { A2dpService service = getService(); A2dpService service = getService(); if (service == null) return; if (service == null) return; Loading
android/app/src/com/android/bluetooth/a2dpsink/A2dpSinkService.java +15 −0 Original line number Original line Diff line number Diff line Loading @@ -44,14 +44,17 @@ public class A2dpSinkService extends ProfileService { private A2dpSinkStateMachine mStateMachine; private A2dpSinkStateMachine mStateMachine; private static A2dpSinkService sA2dpSinkService; private static A2dpSinkService sA2dpSinkService; @Override protected String getName() { protected String getName() { return TAG; return TAG; } } @Override protected IProfileServiceBinder initBinder() { protected IProfileServiceBinder initBinder() { return new BluetoothA2dpSinkBinder(this); return new BluetoothA2dpSinkBinder(this); } } @Override protected boolean start() { protected boolean start() { if (DBG) { if (DBG) { Log.d(TAG, "start()"); Log.d(TAG, "start()"); Loading @@ -64,6 +67,7 @@ public class A2dpSinkService extends ProfileService { return true; return true; } } @Override protected boolean stop() { protected boolean stop() { if (DBG) { if (DBG) { Log.d(TAG, "stop()"); Log.d(TAG, "stop()"); Loading @@ -76,6 +80,7 @@ public class A2dpSinkService extends ProfileService { return true; return true; } } @Override protected boolean cleanup() { protected boolean cleanup() { if (mStateMachine!= null) { if (mStateMachine!= null) { mStateMachine.cleanup(); mStateMachine.cleanup(); Loading Loading @@ -260,59 +265,69 @@ public class A2dpSinkService extends ProfileService { mService = svc; mService = svc; } } @Override public boolean cleanup() { public boolean cleanup() { mService = null; mService = null; return true; return true; } } @Override public boolean connect(BluetoothDevice device) { public boolean connect(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return false; if (service == null) return false; return service.connect(device); return service.connect(device); } } @Override public boolean disconnect(BluetoothDevice device) { public boolean disconnect(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return false; if (service == null) return false; return service.disconnect(device); return service.disconnect(device); } } @Override public List<BluetoothDevice> getConnectedDevices() { public List<BluetoothDevice> getConnectedDevices() { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return new ArrayList<BluetoothDevice>(0); if (service == null) return new ArrayList<BluetoothDevice>(0); return service.getConnectedDevices(); return service.getConnectedDevices(); } } @Override public List<BluetoothDevice> getDevicesMatchingConnectionStates(int[] states) { public List<BluetoothDevice> getDevicesMatchingConnectionStates(int[] states) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return new ArrayList<BluetoothDevice>(0); if (service == null) return new ArrayList<BluetoothDevice>(0); return service.getDevicesMatchingConnectionStates(states); return service.getDevicesMatchingConnectionStates(states); } } @Override public int getConnectionState(BluetoothDevice device) { public int getConnectionState(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return BluetoothProfile.STATE_DISCONNECTED; if (service == null) return BluetoothProfile.STATE_DISCONNECTED; return service.getConnectionState(device); return service.getConnectionState(device); } } @Override public boolean isA2dpPlaying(BluetoothDevice device) { public boolean isA2dpPlaying(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return false; if (service == null) return false; return service.isA2dpPlaying(device); return service.isA2dpPlaying(device); } } @Override public boolean setPriority(BluetoothDevice device, int priority) { public boolean setPriority(BluetoothDevice device, int priority) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return false; if (service == null) return false; return service.setPriority(device, priority); return service.setPriority(device, priority); } } @Override public int getPriority(BluetoothDevice device) { public int getPriority(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return BluetoothProfile.PRIORITY_UNDEFINED; if (service == null) return BluetoothProfile.PRIORITY_UNDEFINED; return service.getPriority(device); return service.getPriority(device); } } @Override public BluetoothAudioConfig getAudioConfig(BluetoothDevice device) { public BluetoothAudioConfig getAudioConfig(BluetoothDevice device) { A2dpSinkService service = getService(); A2dpSinkService service = getService(); if (service == null) return null; if (service == null) return null; Loading
android/app/src/com/android/bluetooth/a2dpsink/A2dpSinkStreamHandler.java +1 −0 Original line number Original line Diff line number Diff line Loading @@ -84,6 +84,7 @@ public class A2dpSinkStreamHandler extends Handler { // Focus changes when we are currently holding focus. // Focus changes when we are currently holding focus. private OnAudioFocusChangeListener mAudioFocusListener = new OnAudioFocusChangeListener() { private OnAudioFocusChangeListener mAudioFocusListener = new OnAudioFocusChangeListener() { @Override public void onAudioFocusChange(int focusChange) { public void onAudioFocusChange(int focusChange) { if (DBG) { if (DBG) { Log.d(TAG, "onAudioFocusChangeListener focuschange " + focusChange); Log.d(TAG, "onAudioFocusChangeListener focuschange " + focusChange); Loading