summaryrefslogtreecommitdiffstats
path: root/media/java
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2009-12-22 23:41:59 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2009-12-22 23:41:59 -0800
commitf31f365a7708c931e955670bc6213fdc8f91a87a (patch)
tree4d1a72347440f4d71519e7ba47c4cd6948ebaa32 /media/java
parent244cc72fdf906799e3ec4cfe5b7cda49d9f08cca (diff)
parenteb5ffc239b6482b9c1e046f6f5872187043d852c (diff)
downloadframeworks_base-f31f365a7708c931e955670bc6213fdc8f91a87a.zip
frameworks_base-f31f365a7708c931e955670bc6213fdc8f91a87a.tar.gz
frameworks_base-f31f365a7708c931e955670bc6213fdc8f91a87a.tar.bz2
am eb5ffc23: Merge change Id8e98194 into eclair
Merge commit 'eb5ffc239b6482b9c1e046f6f5872187043d852c' into eclair-plus-aosp * commit 'eb5ffc239b6482b9c1e046f6f5872187043d852c': Fix issues 2333450 and 2333559:
Diffstat (limited to 'media/java')
-rw-r--r--media/java/android/media/AudioService.java23
-rw-r--r--media/java/android/media/AudioSystem.java3
2 files changed, 22 insertions, 4 deletions
diff --git a/media/java/android/media/AudioService.java b/media/java/android/media/AudioService.java
index b41f3e2..4a1c2a5 100644
--- a/media/java/android/media/AudioService.java
+++ b/media/java/android/media/AudioService.java
@@ -112,7 +112,7 @@ public class AudioService extends IAudioService.Stub {
private boolean mMediaServerOk;
/** cached value of the BT dock address to recognize undocking events */
- private static String sBtDockAddress;
+ private static String sBtDockAddress = "";
private SoundPool mSoundPool;
private Object mSoundEffectsLock = new Object();
@@ -231,6 +231,7 @@ public class AudioService extends IAudioService.Stub {
// Forced device usage for communications
private int mForcedUseForComm;
+
///////////////////////////////////////////////////////////////////////////
// Construction
///////////////////////////////////////////////////////////////////////////
@@ -1414,9 +1415,25 @@ public class AudioService extends IAudioService.Stub {
(state == BluetoothA2dp.STATE_CONNECTED ||
state == BluetoothA2dp.STATE_PLAYING)) {
if (btDevice.isBluetoothDock()) {
- Log.v(TAG, "Recognized docking to BT dock");
+ Log.v(TAG, "Recognized connection to BT dock");
sBtDockAddress = address;
- AudioSystem.setForceUse(AudioSystem.FOR_DOCK, AudioSystem.FORCE_BT_DOCK);
+ Intent i = context.registerReceiver(null, new IntentFilter(Intent.ACTION_DOCK_EVENT));
+ if (i != null) {
+ int dockState = i.getIntExtra(Intent.EXTRA_DOCK_STATE, Intent.EXTRA_DOCK_STATE_UNDOCKED);
+ int config;
+ switch (dockState) {
+ case Intent.EXTRA_DOCK_STATE_DESK:
+ config = AudioSystem.FORCE_BT_DESK_DOCK;
+ break;
+ case Intent.EXTRA_DOCK_STATE_CAR:
+ config = AudioSystem.FORCE_BT_CAR_DOCK;
+ break;
+ case Intent.EXTRA_DOCK_STATE_UNDOCKED:
+ default:
+ config = AudioSystem.FORCE_NONE;
+ }
+ AudioSystem.setForceUse(AudioSystem.FOR_DOCK, config);
+ }
}
AudioSystem.setDeviceConnectionState(AudioSystem.DEVICE_OUT_BLUETOOTH_A2DP,
AudioSystem.DEVICE_STATE_AVAILABLE,
diff --git a/media/java/android/media/AudioSystem.java b/media/java/android/media/AudioSystem.java
index 9e9b259..137b919 100644
--- a/media/java/android/media/AudioSystem.java
+++ b/media/java/android/media/AudioSystem.java
@@ -271,7 +271,8 @@ public class AudioSystem
public static final int FORCE_BT_SCO = 3;
public static final int FORCE_BT_A2DP = 4;
public static final int FORCE_WIRED_ACCESSORY = 5;
- public static final int FORCE_BT_DOCK = 6;
+ public static final int FORCE_BT_CAR_DOCK = 6;
+ public static final int FORCE_BT_DESK_DOCK = 7;
public static final int FORCE_DEFAULT = FORCE_NONE;
// usage for serForceUse