Merge "[Jetpack] Add a public filter for config id." into androidx-main
diff --git a/core/uwb/uwb/src/main/java/androidx/core/uwb/impl/UwbManagerImpl.kt b/core/uwb/uwb/src/main/java/androidx/core/uwb/impl/UwbManagerImpl.kt
index a8d9bd8..157369b 100644
--- a/core/uwb/uwb/src/main/java/androidx/core/uwb/impl/UwbManagerImpl.kt
+++ b/core/uwb/uwb/src/main/java/androidx/core/uwb/impl/UwbManagerImpl.kt
@@ -23,6 +23,10 @@
import android.os.IBinder
import android.util.Log
import androidx.core.uwb.RangingCapabilities
+import androidx.core.uwb.RangingParameters.Companion.CONFIG_MULTICAST_DS_TWR
+import androidx.core.uwb.RangingParameters.Companion.CONFIG_PROVISIONED_MULTICAST_DS_TWR
+import androidx.core.uwb.RangingParameters.Companion.CONFIG_PROVISIONED_UNICAST_DS_TWR
+import androidx.core.uwb.RangingParameters.Companion.CONFIG_UNICAST_DS_TWR
import androidx.core.uwb.UwbAddress
import androidx.core.uwb.UwbClientSessionScope
import androidx.core.uwb.UwbComplexChannel
@@ -42,6 +46,12 @@
internal class UwbManagerImpl(private val context: Context) : UwbManager {
companion object {
const val TAG = "UwbMangerImpl"
+ val PUBLIC_AVAILABLE_CONFIG_IDS = setOf(
+ CONFIG_UNICAST_DS_TWR,
+ CONFIG_MULTICAST_DS_TWR,
+ CONFIG_PROVISIONED_UNICAST_DS_TWR,
+ CONFIG_PROVISIONED_MULTICAST_DS_TWR
+ )
var iUwb: IUwb? = null
}
@@ -96,6 +106,8 @@
val nearbyLocalAddress = uwbClient.localAddress.await()
val nearbyRangingCapabilities = uwbClient.rangingCapabilities.await()
val localAddress = UwbAddress(nearbyLocalAddress.address)
+ val supportedConfigIds = nearbyRangingCapabilities.supportedConfigIds
+ supportedConfigIds.retainAll(PUBLIC_AVAILABLE_CONFIG_IDS)
val rangingCapabilities = RangingCapabilities(
nearbyRangingCapabilities.supportsDistance(),
nearbyRangingCapabilities.supportsAzimuthalAngle(),
@@ -103,7 +115,7 @@
nearbyRangingCapabilities.minRangingInterval,
nearbyRangingCapabilities.supportedChannels.toSet(),
nearbyRangingCapabilities.supportedNtfConfigs.toSet(),
- nearbyRangingCapabilities.supportedConfigIds.toSet(),
+ supportedConfigIds.toSet(),
nearbyRangingCapabilities.supportedSlotDurations.toSet(),
nearbyRangingCapabilities.supportedRangingUpdateRates.toSet(),
nearbyRangingCapabilities.supportsRangingIntervalReconfigure(),
@@ -149,7 +161,7 @@
it.minRangingInterval,
it.supportedChannels.toSet(),
it.supportedNtfConfigs.toSet(),
- it.supportedConfigIds.toSet(),
+ it.supportedConfigIds.filter { it in PUBLIC_AVAILABLE_CONFIG_IDS }.toSet(),
it.supportedSlotDurations.toSet(),
it.supportedRangingUpdateRates.toSet(),
it.supportsRangingIntervalReconfigure,