[Audiosharing] Create dialog for unsupported device.

Test: atest -c com.android.settings.connecteddevice.audiosharing.audiostreams
Bug: 308368124
Change-Id: Ibe421d29aa1ee05ee736fc8a2665794984a8b6e1
This commit is contained in:
chelseahao
2024-05-21 12:30:20 +08:00
parent 9c0654daea
commit 997438d537
3 changed files with 22 additions and 7 deletions

View File

@@ -758,4 +758,8 @@
<string name="audio_streams_dialog_no_le_device_subtitle" product="default">To listen to an audio stream, first connect headphones that support LE Audio to this phone.</string>
<string name="audio_streams_dialog_no_le_device_subtitle" product="tablet">To listen to an audio stream, first connect headphones that support LE Audio to this tablet.</string>
<string name="audio_streams_dialog_no_le_device_subtitle" product="device">To listen to an audio stream, first connect headphones that support LE Audio to this device.</string>
<!-- Le audio streams unsupported device subtitle [CHAR LIMIT=NONE] -->
<string name="audio_streams_dialog_unsupported_device_subtitle" product="default">This phone doesn\'t support LE Audio, which is needed to listen to audio streams.</string>
<string name="audio_streams_dialog_unsupported_device_subtitle" product="tablet">This tablet doesn\'t support LE Audio, which is needed to listen to audio streams.</string>
<string name="audio_streams_dialog_unsupported_device_subtitle" product="device">This device doesn\'t support LE Audio, which is needed to listen to audio streams.</string>
</resources>

View File

@@ -54,9 +54,6 @@ public class AudioStreamConfirmDialog extends InstrumentedDialogFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (!AudioSharingUtils.isFeatureEnabled()) {
return;
}
setShowsDialog(true);
mActivity = getActivity();
if (mActivity == null) {
@@ -84,6 +81,9 @@ public class AudioStreamConfirmDialog extends InstrumentedDialogFragment {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
if (!AudioSharingUtils.isFeatureEnabled()) {
return getUnsupporteDialog();
}
if (AudioSharingUtils.isAudioSharingProfileReady(mProfileManager)) {
CachedBluetoothDevice connectedLeDevice =
AudioStreamsHelper.getCachedBluetoothDeviceInSharingOrLeConnected(
@@ -137,6 +137,21 @@ public class AudioStreamConfirmDialog extends InstrumentedDialogFragment {
.build();
}
private Dialog getUnsupporteDialog() {
return new AudioStreamsDialogFragment.DialogBuilder(getActivity())
.setTitle(getString(R.string.audio_streams_dialog_cannot_listen))
.setSubTitle2(getString(R.string.audio_streams_dialog_unsupported_device_subtitle))
.setRightButtonText(getString(R.string.audio_streams_dialog_close))
.setRightButtonOnClickListener(
unused -> {
dismiss();
if (mActivity != null) {
mActivity.finish();
}
})
.build();
}
private Dialog getErrorDialog(String name) {
return new AudioStreamsDialogFragment.DialogBuilder(getActivity())
.setTitle(getString(R.string.audio_streams_dialog_cannot_listen))

View File

@@ -19,16 +19,12 @@ package com.android.settings.connecteddevice.audiosharing.audiostreams;
import android.os.Bundle;
import com.android.settings.SettingsActivity;
import com.android.settings.connecteddevice.audiosharing.AudioSharingUtils;
public class AudioStreamConfirmDialogActivity extends SettingsActivity {
@Override
protected void onCreate(Bundle savedState) {
super.onCreate(savedState);
if (!AudioSharingUtils.isFeatureEnabled()) {
finish();
}
}
@Override