diff --git a/lib/screens/scanner_screen.dart b/lib/screens/scanner_screen.dart index 713239f..69ddf6c 100644 --- a/lib/screens/scanner_screen.dart +++ b/lib/screens/scanner_screen.dart @@ -68,6 +68,11 @@ class _ScannerScreenState extends State { void dispose() { _connector.removeListener(_connectionListener); unawaited(_bluetoothStateSubscription.cancel()); + if (!_changedNavigation) { + WidgetsBinding.instance.addPostFrameCallback((_) { + unawaited(_connector.disconnect(manual: true)); + }); + } super.dispose(); }