From 28fb5ac84781e327479bfd0d225fe01408204cc6 Mon Sep 17 00:00:00 2001 From: nbschultz97 <126931519+nbschultz97@users.noreply.github.com> Date: Thu, 11 Sep 2025 14:38:54 -0600 Subject: [PATCH] Make fetchFlightData suspend and run on Dispatchers.IO --- .../example/dronedetect/DroneSignalDetector.kt | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/example/dronedetect/DroneSignalDetector.kt b/app/src/main/java/com/example/dronedetect/DroneSignalDetector.kt index 88c413e..b1d2180 100644 --- a/app/src/main/java/com/example/dronedetect/DroneSignalDetector.kt +++ b/app/src/main/java/com/example/dronedetect/DroneSignalDetector.kt @@ -6,19 +6,34 @@ import android.content.Intent import android.net.wifi.WifiManager import android.os.Handler import android.os.Looper +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.SupervisorJob +import kotlinx.coroutines.cancel +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext class DroneSignalDetector(private val context: Context) { private val handler = Handler(Looper.getMainLooper()) private val wifiManager = context.applicationContext.getSystemService(Context.WIFI_SERVICE) as WifiManager private val receiver = WifiScanReceiver() + private val scope = CoroutineScope(SupervisorJob() + Dispatchers.IO) fun startScan() { - // TODO: implement scanning logic + scope.launch { + fetchFlightData() + // TODO: implement scanning logic + } + } + + suspend fun fetchFlightData() = withContext(Dispatchers.IO) { + // TODO: implement fetching flight data } fun stopScan() { handler.removeCallbacksAndMessages(null) context.unregisterReceiver(receiver) + scope.cancel() } }