Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0bafc75b authored by Rongxuan Liu's avatar Rongxuan Liu Committed by Gerrit Code Review
Browse files

Merge "Remove leaudio_broadcast_monitor_source_sync_status flag" into main

parents 344dda11 da7a2ee0
Loading
Loading
Loading
Loading
+8 −17
Original line number Diff line number Diff line
@@ -25,7 +25,6 @@ import static com.android.bluetooth.flags.Flags.leaudioAllowedContextMask;
import static com.android.bluetooth.flags.Flags.leaudioBigDependsOnAudioState;
import static com.android.bluetooth.flags.Flags.leaudioBroadcastAssistantPeripheralEntrustment;
import static com.android.bluetooth.flags.Flags.leaudioBroadcastExtractPeriodicScannerFromStateMachine;
import static com.android.bluetooth.flags.Flags.leaudioBroadcastMonitorSourceSyncStatus;
import static com.android.bluetooth.flags.Flags.leaudioBroadcastResyncHelper;
import static com.android.bluetooth.flags.Flags.leaudioSortScansToSyncByFails;

@@ -390,12 +389,8 @@ public class BassClientService extends ProfileService {
                                            + " same syncHandle="
                                            + syncHandle
                                            + ", before syncLost");
                            if (leaudioBroadcastMonitorSourceSyncStatus()) {
                                log(
                                        "Notify broadcast source lost, broadcast id: "
                                                + oldBroadcastId);
                            log("Notify broadcast source lost, broadcast id: " + oldBroadcastId);
                            mCallbacks.notifySourceLost(oldBroadcastId);
                            }
                            clearAllDataForSyncHandle(syncHandle);
                            mCachedBroadcasts.remove(oldBroadcastId);
                        }
@@ -2203,13 +2198,11 @@ public class BassClientService extends ProfileService {
                            mCachedBroadcasts.remove(broadcastId);
                        }
                    }
                    if (leaudioBroadcastMonitorSourceSyncStatus()) {
                    log("Notify broadcast source lost, broadcast id: " + broadcastId);
                    mCallbacks.notifySourceLost(broadcastId);
                }
            }
        }
        }

        @Override
        public void onBigInfoAdvertisingReport(int syncHandle, boolean encrypted) {
@@ -2359,13 +2352,11 @@ public class BassClientService extends ProfileService {
            }
        }
        metaData.setEncrypted(encrypted);
        if (leaudioBroadcastMonitorSourceSyncStatus()) {
        // update the rssi value
        ScanResult scanRes = getCachedBroadcast(result.getBroadcastId());
        if (scanRes != null) {
            metaData.setRssi(scanRes.getRssi());
        }
        }
        return metaData.build();
    }

+8 −12
Original line number Diff line number Diff line
@@ -789,13 +789,11 @@ public class BassClientStateMachine extends StateMachine {
            }
        }
        metaData.setEncrypted(encrypted);
        if (Flags.leaudioBroadcastMonitorSourceSyncStatus()) {
        // update the rssi value
        ScanResult scanRes = mService.getCachedBroadcast(result.getBroadcastId());
        if (scanRes != null) {
            metaData.setRssi(scanRes.getRssi());
        }
        }
        return metaData.build();
    }

@@ -1482,13 +1480,11 @@ public class BassClientStateMachine extends StateMachine {
                                + " leaudioBroadcastExtractPeriodicScannerFromStateMachine flag");
            }
            log("OnSyncLost" + syncHandle);
            if (Flags.leaudioBroadcastMonitorSourceSyncStatus()) {
            int broadcastId = mService.getBroadcastIdForSyncHandle(syncHandle);
            if (broadcastId != BassConstants.INVALID_BROADCAST_ID) {
                log("Notify broadcast source lost, broadcast id: " + broadcastId);
                mService.getCallbacks().notifySourceLost(broadcastId);
            }
            }
            cancelActiveSync(syncHandle);
        }

+8 −34
Original line number Diff line number Diff line
@@ -4554,10 +4554,7 @@ public class BassClientServiceTest {
    }

    @Test
    @EnableFlags({
        Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE,
        Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS
    })
    @EnableFlags(Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE)
    public void onPeriodicAdvertisingReport_withoutBaseData_cancelActiveSync() {
        prepareConnectedDeviceGroup();
        startSearchingForSources();
@@ -4648,10 +4645,7 @@ public class BassClientServiceTest {
    }

    @Test
    @EnableFlags({
        Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE,
        Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS
    })
    @EnableFlags(Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE)
    public void onPeriodicAdvertisingReport_wrongBaseData_cancelActiveSync() {
        prepareConnectedDeviceGroup();
        startSearchingForSources();
@@ -4751,10 +4745,7 @@ public class BassClientServiceTest {
    }

    @Test
    @EnableFlags({
        Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE,
        Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS
    })
    @EnableFlags(Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE)
    public void onPeriodicAdvertisingReport_updateBase() {
        prepareConnectedDeviceGroup();
        startSearchingForSources();
@@ -4788,10 +4779,7 @@ public class BassClientServiceTest {
    }

    @Test
    @EnableFlags({
        Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE,
        Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS
    })
    @EnableFlags(Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE)
    public void onPeriodicAdvertisingReport_updateBaseAfterWrongBaseData() {
        prepareConnectedDeviceGroup();
        startSearchingForSources();
@@ -4935,10 +4923,7 @@ public class BassClientServiceTest {
    }

    @Test
    @EnableFlags({
        Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE,
        Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS
    })
    @EnableFlags(Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE)
    public void notifySourceFound_once_updateRssi() {
        prepareConnectedDeviceGroup();
        startSearchingForSources();
@@ -4995,7 +4980,6 @@ public class BassClientServiceTest {
    @Test
    @EnableFlags({
        Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE,
        Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS,
        Flags.FLAG_LEAUDIO_BIG_DEPENDS_ON_AUDIO_STATE
    })
    public void notifySourceFound_without_public_announcement() {
@@ -5102,10 +5086,7 @@ public class BassClientServiceTest {
    }

    @Test
    @EnableFlags({
        Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE,
        Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS
    })
    @EnableFlags(Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE)
    public void notifySourceFound_periodic_after_big() {
        prepareConnectedDeviceGroup();
        startSearchingForSources();
@@ -5159,7 +5140,6 @@ public class BassClientServiceTest {
    @Test
    @EnableFlags({
        Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE,
        Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS,
        Flags.FLAG_LEAUDIO_BIG_DEPENDS_ON_AUDIO_STATE
    })
    public void notifySourceFound_periodic_after_wrong_periodic() {
@@ -5251,10 +5231,7 @@ public class BassClientServiceTest {
    }

    @Test
    @EnableFlags({
        Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE,
        Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS
    })
    @EnableFlags(Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE)
    public void notifySourceFound_alreadySynced_clearFlag() {
        // Scan
        prepareConnectedDeviceGroup();
@@ -5322,10 +5299,7 @@ public class BassClientServiceTest {
    }

    @Test
    @EnableFlags({
        Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE,
        Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS
    })
    @EnableFlags(Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE)
    public void onSyncLost_notifySourceLostAndCancelSync() {
        prepareConnectedDeviceGroup();
        startSearchingForSources();
+0 −2
Original line number Diff line number Diff line
@@ -2222,7 +2222,6 @@ public class BassClientStateMachineTest {
    public void periodicAdvertisingCallbackOnSyncLost_notifySourceLost() {
        mSetFlagsRule.disableFlags(
                Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE);
        mSetFlagsRule.enableFlags(Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS);
        PeriodicAdvertisingCallback cb = mBassClientStateMachine.mLocalPeriodicAdvCallback;
        BassClientService.Callbacks callbacks = Mockito.mock(BassClientService.Callbacks.class);
        int syncHandle = 1;
@@ -2238,7 +2237,6 @@ public class BassClientStateMachineTest {
    public void periodicAdvertisingCallbackOnBigInfoAdvertisingReport_updateRssi() {
        mSetFlagsRule.disableFlags(
                Flags.FLAG_LEAUDIO_BROADCAST_EXTRACT_PERIODIC_SCANNER_FROM_STATE_MACHINE);
        mSetFlagsRule.enableFlags(Flags.FLAG_LEAUDIO_BROADCAST_MONITOR_SOURCE_SYNC_STATUS);
        PeriodicAdvertisingCallback cb = mBassClientStateMachine.mLocalPeriodicAdvCallback;
        BassClientService.Callbacks callbacks = Mockito.mock(BassClientService.Callbacks.class);
        int testRssi = -40;
+4 −4
Original line number Diff line number Diff line
@@ -612,7 +612,7 @@ package android.bluetooth {
    method public void onSourceAddFailed(@NonNull android.bluetooth.BluetoothDevice, @NonNull android.bluetooth.BluetoothLeBroadcastMetadata, int);
    method public void onSourceAdded(@NonNull android.bluetooth.BluetoothDevice, int, int);
    method public void onSourceFound(@NonNull android.bluetooth.BluetoothLeBroadcastMetadata);
    method @FlaggedApi("com.android.bluetooth.flags.leaudio_broadcast_monitor_source_sync_status") public default void onSourceLost(int);
    method public default void onSourceLost(int);
    method public void onSourceModified(@NonNull android.bluetooth.BluetoothDevice, int, int);
    method public void onSourceModifyFailed(@NonNull android.bluetooth.BluetoothDevice, int, int);
    method public void onSourceRemoveFailed(@NonNull android.bluetooth.BluetoothDevice, int, int);
@@ -646,7 +646,7 @@ package android.bluetooth {
    method public int getPaSyncInterval();
    method @IntRange(from=0, to=16777215) public int getPresentationDelayMicros();
    method @Nullable public android.bluetooth.BluetoothLeAudioContentMetadata getPublicBroadcastMetadata();
    method @FlaggedApi("com.android.bluetooth.flags.leaudio_broadcast_monitor_source_sync_status") @IntRange(from=0xffffff81, to=127) public int getRssi();
    method @IntRange(from=0xffffff81, to=127) public int getRssi();
    method public int getSourceAddressType();
    method public int getSourceAdvertisingSid();
    method @NonNull public android.bluetooth.BluetoothDevice getSourceDevice();
@@ -659,7 +659,7 @@ package android.bluetooth {
    field public static final int AUDIO_CONFIG_QUALITY_STANDARD = 1; // 0x1
    field @NonNull public static final android.os.Parcelable.Creator<android.bluetooth.BluetoothLeBroadcastMetadata> CREATOR;
    field public static final int PA_SYNC_INTERVAL_UNKNOWN = 65535; // 0xffff
    field @FlaggedApi("com.android.bluetooth.flags.leaudio_broadcast_monitor_source_sync_status") public static final int RSSI_UNKNOWN = 127; // 0x7f
    field public static final int RSSI_UNKNOWN = 127; // 0x7f
  }

  public static final class BluetoothLeBroadcastMetadata.Builder {
@@ -677,7 +677,7 @@ package android.bluetooth {
    method @NonNull public android.bluetooth.BluetoothLeBroadcastMetadata.Builder setPresentationDelayMicros(@IntRange(from=0, to=16777215) int);
    method @NonNull public android.bluetooth.BluetoothLeBroadcastMetadata.Builder setPublicBroadcast(boolean);
    method @NonNull public android.bluetooth.BluetoothLeBroadcastMetadata.Builder setPublicBroadcastMetadata(@Nullable android.bluetooth.BluetoothLeAudioContentMetadata);
    method @FlaggedApi("com.android.bluetooth.flags.leaudio_broadcast_monitor_source_sync_status") @NonNull public android.bluetooth.BluetoothLeBroadcastMetadata.Builder setRssi(@IntRange(from=0xffffff81, to=127) int);
    method @NonNull public android.bluetooth.BluetoothLeBroadcastMetadata.Builder setRssi(@IntRange(from=0xffffff81, to=127) int);
    method @NonNull public android.bluetooth.BluetoothLeBroadcastMetadata.Builder setSourceAdvertisingSid(int);
    method @NonNull public android.bluetooth.BluetoothLeBroadcastMetadata.Builder setSourceDevice(@NonNull android.bluetooth.BluetoothDevice, int);
  }
Loading