Android 流未捕获AbortFLowException

Android 流未捕获AbortFLowException,android,kotlin,Android,Kotlin,我正在使用Juul Kable进行蓝牙低能耗连接。当扫描蓝牙设备时,我在查找元素时在Flow.first()函数中得到AbortFLowException。由于某些原因,flow.catch或周围的try-catch都无法捕获异常 scope.launch { try { var timeout = withTimeoutOrNull(SCAN_DURATION_MILLIS) { val advertisement = Scanner().adv

我正在使用Juul Kable进行蓝牙低能耗连接。当扫描蓝牙设备时,我在查找元素时在
Flow.first()
函数中得到AbortFLowException。由于某些原因,
flow.catch
或周围的try-catch都无法捕获异常

scope.launch {
    try {
        var timeout = withTimeoutOrNull(SCAN_DURATION_MILLIS) {
            val advertisement = Scanner().advertisements
                .onCompletion { cause ->
                    if (cause != null) {
                        _scanStatus.value = ScanStatus.Stopped
                    }
                }.catch { cause ->
                    cause.printStackTrace()
                    _scanStatus.value = ScanStatus.Failed(cause.message ?: "Unknown error")
                }
                .first {
                    Log.e(TAG, "Device found in first: ${(it.name ?: "Name empty")}")
                    it.isSmartCap
                }

            callback(advertisement)
        }

        if (timeout == null) {
            _scanStatus.value = ScanStatus.Failed("Timeout")
        }
    } catch (e: Throwable) {
        _scanStatus.value = ScanStatus.Failed(e.message ?: "Unknown error")
    }
}
我相信这是一个在版本
0.3.0
中已经修复的问题