[Audiosharing] Add logging 1.

Test: atest -c com.android.settings.connecteddevice.audiosharing.audiostreams
Bug: 308368124
Change-Id: I2513824826b9d7dd6240728179ea004f33b4fbe3
This commit is contained in:
chelseahao
2024-06-12 14:00:11 +08:00
committed by Chelsea Hao
parent 7ae5aaa69d
commit f017332c91
7 changed files with 87 additions and 35 deletions

View File

@@ -18,6 +18,7 @@ package com.android.settings.connecteddevice.audiosharing;
import static com.android.settings.connecteddevice.audiosharing.AudioSharingUtils.isBroadcasting;
import android.app.settings.SettingsEnums;
import android.bluetooth.BluetoothLeBroadcast;
import android.bluetooth.BluetoothLeBroadcastMetadata;
import android.content.Context;
@@ -32,11 +33,13 @@ import androidx.preference.PreferenceScreen;
import com.android.settings.bluetooth.Utils;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.ValidatedEditTextPreference;
import com.android.settingslib.bluetooth.BluetoothUtils;
import com.android.settingslib.bluetooth.LocalBluetoothLeBroadcast;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.utils.ThreadUtils;
import java.util.concurrent.Executor;
@@ -116,6 +119,8 @@ public class AudioSharingNamePreferenceController extends BasePreferenceControll
@Nullable private AudioSharingNamePreference mPreference;
private final Executor mExecutor;
private final AudioSharingNameTextValidator mAudioSharingNameTextValidator;
private final MetricsFeatureProvider mMetricsFeatureProvider;
private AtomicBoolean mCallbacksRegistered = new AtomicBoolean(false);
public AudioSharingNamePreferenceController(Context context, String preferenceKey) {
@@ -126,6 +131,7 @@ public class AudioSharingNamePreferenceController extends BasePreferenceControll
(mProfileManager != null) ? mProfileManager.getLeAudioBroadcastProfile() : null;
mAudioSharingNameTextValidator = new AudioSharingNameTextValidator();
mExecutor = Executors.newSingleThreadExecutor();
mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
}
@Override
@@ -214,14 +220,19 @@ public class AudioSharingNamePreferenceController extends BasePreferenceControll
ThreadUtils.postOnBackgroundThread(
() -> {
if (mBroadcast != null) {
boolean isBroadcasting = isBroadcasting(mBtManager);
mBroadcast.setBroadcastName((String) newValue);
// We currently don't have a UI field for program info so we keep it
// consistent with broadcast name.
mBroadcast.setProgramInfo((String) newValue);
if (isBroadcasting(mBtManager)) {
if (isBroadcasting) {
mBroadcast.updateBroadcast();
}
updateBroadcastName();
mMetricsFeatureProvider.action(
mContext,
SettingsEnums.ACTION_AUDIO_STREAM_NAME_UPDATED,
isBroadcasting ? 1 : 0);
}
});
return true;