Allow stopping of Framework advertising
Test: build
Relnote: NA
Change-Id: I1920353e1248fb0c92f1dbcf78705ac19f683b19
diff --git a/bluetooth/integration-tests/testapp/src/main/java/androidx/bluetooth/integration/testapp/ui/framework/FwkFragment.kt b/bluetooth/integration-tests/testapp/src/main/java/androidx/bluetooth/integration/testapp/ui/framework/FwkFragment.kt
index 3230f45..d066bbc 100644
--- a/bluetooth/integration-tests/testapp/src/main/java/androidx/bluetooth/integration/testapp/ui/framework/FwkFragment.kt
+++ b/bluetooth/integration-tests/testapp/src/main/java/androidx/bluetooth/integration/testapp/ui/framework/FwkFragment.kt
@@ -95,8 +95,9 @@
scan()
}
- binding.switchAdvertise.setOnClickListener {
- if (binding.switchAdvertise.isChecked) startAdvertise()
+ binding.switchAdvertise.setOnCheckedChangeListener { _, isChecked ->
+ if (isChecked) startAdvertise()
+ else stopAdvertise()
}
}
@@ -151,7 +152,22 @@
bleAdvertiser?.startAdvertising(advertiseSettings, advertiseData, advertiseCallback)
- Toast.makeText(context, getString(R.string.advertise_start_message), Toast.LENGTH_LONG)
+ Toast.makeText(context, getString(R.string.advertise_start_message), Toast.LENGTH_SHORT)
.show()
}
+
+ // Permissions are handled by MainActivity requestBluetoothPermissions
+ @SuppressLint("MissingPermission")
+ private fun stopAdvertise() {
+ Log.d(TAG, "stopAdvertise() called")
+
+ val bluetoothManager =
+ context?.getSystemService(Context.BLUETOOTH_SERVICE) as? BluetoothManager
+
+ val bluetoothAdapter = bluetoothManager?.adapter
+
+ val bleAdvertiser = bluetoothAdapter?.bluetoothLeAdvertiser
+
+ bleAdvertiser?.stopAdvertising(advertiseCallback)
+ }
}