diff --git a/android/src/main/kotlin/io/intheloup/beacons/channel/Channels.kt b/android/src/main/kotlin/io/intheloup/beacons/channel/Channels.kt index 1bc648a..d4bd778 100644 --- a/android/src/main/kotlin/io/intheloup/beacons/channel/Channels.kt +++ b/android/src/main/kotlin/io/intheloup/beacons/channel/Channels.kt @@ -61,9 +61,7 @@ class Channels(private val permissionClient: PermissionClient, } private fun startMonitoring(request: DataRequest, result: MethodChannel.Result) { - launch(UI) { - result.success(beaconsClient.startMonitoring(request)) - } + var operation: BeaconsClient.Operation? = null operation = BeaconsClient.Operation(BeaconsClient.Operation.Kind.Monitoring, request.region, request.inBackground) { result ->} beaconsClient.addRequest(operation!!, request.permission) result.success(null) } private fun stopMonitoring(region: RegionModel, result: MethodChannel.Result) { diff --git a/android/src/main/kotlin/io/intheloup/beacons/logic/SharedMonitor.kt b/android/src/main/kotlin/io/intheloup/beacons/logic/SharedMonitor.kt index a59bf3a..70242c7 100644 --- a/android/src/main/kotlin/io/intheloup/beacons/logic/SharedMonitor.kt +++ b/android/src/main/kotlin/io/intheloup/beacons/logic/SharedMonitor.kt @@ -41,7 +41,7 @@ class SharedMonitor(private val application: Application, fun attachForegroundNotifier(notifier: MonitorNotifier) { Log.d(Tag, "attach foreground notifier") - this.foregroundNotifier = notifier + this.foregroundNotifier = null // foreground notifier being attached means background logic is already processed // or not needed anymore @@ -50,7 +50,7 @@ class SharedMonitor(private val application: Application, fun detachForegroundNotifier(notifier: MonitorNotifier) { Log.d(Tag, "detach foreground notifier") - check(this.foregroundNotifier == notifier) + // check(this.foregroundNotifier == notifier) this.foregroundNotifier = null } diff --git a/lib/channel/channels.dart b/lib/channel/channels.dart index 7d3d24b..a26939a 100644 --- a/lib/channel/channels.dart +++ b/lib/channel/channels.dart @@ -47,7 +47,9 @@ class _Channels { return; } - Future startMonitoring(_DataRequest request) async { + /// return `;` + /// It returns nothing, suggest in [Issue #13](https://github.com/loup-v/beacons/issues/13) + Future startMonitoring(_DataRequest request) async { final response = await _invokeChannelMethod( _loggingTag, _channel,