Merge "Fix music output unable switch from BTHS to Phone"
This commit is contained in:
committed by
Android (Google) Code Review
commit
fba5c63ecb
@@ -70,13 +70,18 @@ public class PhoneMediaDevice extends MediaDevice {
|
||||
final HearingAidProfile hapProfile = mProfileManager.getHearingAidProfile();
|
||||
final A2dpProfile a2dpProfile = mProfileManager.getA2dpProfile();
|
||||
|
||||
// Some device may not have HearingAidProfile, consider all situation to set active device.
|
||||
boolean isConnected = false;
|
||||
|
||||
if (hapProfile != null && a2dpProfile != null) {
|
||||
isConnected = hapProfile.setActiveDevice(null) && a2dpProfile.setActiveDevice(null);
|
||||
updateSummary(true);
|
||||
setConnectedRecord();
|
||||
} else if (a2dpProfile != null) {
|
||||
isConnected = a2dpProfile.setActiveDevice(null);
|
||||
} else if (hapProfile != null) {
|
||||
isConnected = hapProfile.setActiveDevice(null);
|
||||
}
|
||||
updateSummary(isConnected);
|
||||
setConnectedRecord();
|
||||
|
||||
Log.d(TAG, "connect() device : " + getName() + ", is selected : " + isConnected);
|
||||
return isConnected;
|
||||
}
|
||||
|
||||
@@ -99,6 +99,30 @@ public class PhoneMediaDeviceTest {
|
||||
assertThat(mPhoneMediaDevice.connect()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void connect_hearingAidProfileIsNullAndA2dpProfileNotNull_isConnectedReturnTrue() {
|
||||
when(mLocalProfileManager.getHearingAidProfile()).thenReturn(null);
|
||||
|
||||
when(mA2dpProfile.setActiveDevice(null)).thenReturn(true);
|
||||
assertThat(mPhoneMediaDevice.connect()).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void connect_hearingAidProfileNotNullAndA2dpProfileIsNull_isConnectedReturnTrue() {
|
||||
when(mLocalProfileManager.getA2dpProfile()).thenReturn(null);
|
||||
|
||||
when(mHapProfile.setActiveDevice(null)).thenReturn(true);
|
||||
assertThat(mPhoneMediaDevice.connect()).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void connect_hearingAidProfileAndA2dpProfileIsNull_isConnectedReturnFalse() {
|
||||
when(mLocalProfileManager.getA2dpProfile()).thenReturn(null);
|
||||
when(mLocalProfileManager.getHearingAidProfile()).thenReturn(null);
|
||||
|
||||
assertThat(mPhoneMediaDevice.connect()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateSummary_isActiveIsTrue_returnActiveString() {
|
||||
mPhoneMediaDevice.updateSummary(true);
|
||||
|
||||
Reference in New Issue
Block a user