dotintent / FlutterBleLib

Bluetooth Low Energy library for Flutter with support for simulating peripherals
Apache License 2.0
535 stars 197 forks source link

_bleManager?.stopPeripheralScan() NullPointerException #485

Closed philos3 closed 4 years ago

philos3 commented 4 years ago

D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(12539): on native side observed method: stopDeviceScan E/MethodChannel#flutter_ble_lib(12539): Failed to handle method call E/MethodChannel#flutter_ble_lib(12539): java.lang.NullPointerException: Attempt to invoke interface method 'void com.polidea.multiplatformbleadapter.BleAdapter.stopDeviceScan()' on a null object reference E/MethodChannel#flutter_ble_lib(12539): at com.polidea.flutter_ble_lib.FlutterBleLibPlugin.stopDeviceScan(FlutterBleLibPlugin.java:170) E/MethodChannel#flutter_ble_lib(12539): at com.polidea.flutter_ble_lib.FlutterBleLibPlugin.onMethodCall(FlutterBleLibPlugin.java:114) E/MethodChannel#flutter_ble_lib(12539): at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:226) E/MethodChannel#flutter_ble_lib(12539): at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(DartMessenger.java:85) E/MethodChannel#flutter_ble_lib(12539): at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:631) E/MethodChannel#flutter_ble_lib(12539): at android.os.MessageQueue.nativePollOnce(Native Method) E/MethodChannel#flutter_ble_lib(12539): at android.os.MessageQueue.next(MessageQueue.java:363) E/MethodChannel#flutter_ble_lib(12539): at android.os.Looper.loop(Looper.java:173) E/MethodChannel#flutter_ble_lib(12539): at android.app.ActivityThread.main(ActivityThread.java:8178) E/MethodChannel#flutter_ble_lib(12539): at java.lang.reflect.Method.invoke(Native Method) E/MethodChannel#flutter_ble_lib(12539): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513) E/MethodChannel#flutter_ble_lib(12539): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1101) D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(12539): on native side observed method: createClient D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(12539): on native side observed method: getState I/flutter (12539): StorageManager.getPlan() ============null I/flutter (12539): ══╡ EXCEPTION CAUGHT BY FLUTTER FRAMEWORK ╞═════════════════════════════════════════════════════════ I/flutter (12539): The following PlatformException was thrown: I/flutter (12539): PlatformException(error, Attempt to invoke interface method 'void I/flutter (12539): com.polidea.multiplatformbleadapter.BleAdapter.stopDeviceScan()' on a null object reference, null) I/flutter (12539): I/flutter (12539): When the exception was thrown, this was the stack: I/flutter (12539): 0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7) I/flutter (12539): 1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:156:18) I/flutter (12539): I/flutter (12539): 2 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:329:12) I/flutter (12539): 3 ScanningMixin.stopDeviceScan (package:flutter_ble_lib/src/bridge/scanning_mixin.dart:43:26) I/flutter (12539): 4 InternalBleManager.stopPeripheralScan (package:flutter_ble_lib/src/internal_ble_manager.dart:63:48) I/flutter (12539): 5 BleProvider.initData (package:flutterbeauty/provider/ble_provider.dart:106:18) I/flutter (12539): 6 new BleProvider (package:flutterbeauty/provider/ble_provider.dart:33:5) I/flutter (12539): 7 dependentServices. (package:flutterbeauty/config/provider_manager.dart:80:18) I/flutter (12539): 8 new ListenableProxyProvider. (package:provider/src/listenable_provider.dart:152:48) I/flutter (12539): 9 _CreateInheritedProviderState.value (package:provider/src/inherited_provider.dart:418:33) I/flutter (12539): 10 _InheritedProviderScopeMixin.value (package:provider/src/inherited_provider.dart:295:33) I/flutter (12539): 11 Provider.of (package:provider/src/provider.dart:233:29) I/flutter (12539): 12 _DeViceManagerPageState.initBleProvider (package:flutterbeauty/ui/page/beauty_plan/device_manage_page.dart:1378:28) I/flutter (12539): 13 _DeViceManagerPageState.initState (package:flutterbeauty/ui/page/beauty_plan/device_manage_page.dart:94:5) I/flutter (12539): 14 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4640:58) I/flutter (12539): 15 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4476:5) I/flutter (12539): ... Normal element mounting (115 frames) I/flutter (12539): 130 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14) I/flutter (12539): 131 Element.updateChild (package:flutter/src/widgets/framework.dart:3214:18) I/flutter (12539): 132 RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:5580:32) I/flutter (12539): 133 MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5957:17) I/flutter (12539): 134 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15) I/flutter (12539): 135 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16) I/flutter (12539): 136 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11) I/flutter (12539): 137 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5) I/flutter (12539): 138 StatefulElement.update (package:flutter/src/widgets/framework.dart:4707:5) I/flutter (12539): 139 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15) I/flutter (12539): 140 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16) I/flutter (12539): 141 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5) I/flutter (12539): 142 ProxyElement.update (package:flutter/src/widgets/framework.dart:4862:5) I/flutter (12539): 143 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:181:11) I/flutter (12539): 144 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15) I/flutter (12539): 145 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5837:14) I/flutter (12539): 46 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15) I/flutter (12539): 147 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16) I/flutter (12539): 148 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11) I/flutter (12539): 149 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5) I/flutter (12539): 150 StatefulElement.update (package:flutter/src/widgets/framework.dart:4707:5) I/flutter (12539): 151 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15) I/flutter (12539): 152 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5837:14) I/flutter (12539): 153 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15) I/flutter (12539): 154 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5837:14) I/flutter (12539): 155 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15) I/flutter (12539): 156 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16) I/flutter (12539): 157 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5) I/flutter (12539): 158 StatelessElement.update (package:flutter/src/widgets/framework.dart:4583:5) I/flutter (12539): 159 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15) I/flutter (12539): 160 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16) I/flutter (12539): 161 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11) I/flutter (12539): 162 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5) I/flutter (12539): 163 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2627:33) I/flutter (12539): WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:883:20) I/flutter (12539): 165 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:284:5) I/flutter (12539): 166 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1113:15) I/flutter (12539): 167 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1052:9) I/flutter (12539): 168 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:968:5) I/flutter (12539): 172 _invoke (dart:ui/hooks.dart:261:10) I/flutter (12539): 173 _drawFrame (dart:ui/hooks.dart:219:3) I/flutter (12539): (elided 3 frames from dart:async) I/flutter (12539): ════════════════════════════════════════════════════════════════════════════════════════════════════

mikolak commented 4 years ago

You've called .startScan() before calling .createClient() or without awaiting for it to finish.