pusher / push-notifications-flutter

Official Pusher Beams Flutter client plugin (iOS, Android and Web), receive notifications easily on your Flutter application with Pusher Beams.
https://pub.dev/packages/pusher_beams
MIT License
10 stars 21 forks source link

Fatal Exception: io.flutter.plugins.firebase.crashlytics.FlutterError - Null check operator used on a null value. Error thrown Instance of 'ErrorDescription'. #36

Closed Arunachalam-G closed 11 months ago

Arunachalam-G commented 1 year ago

I experienced a crash in Pusher Beam plugin codes while using my flutter app. I added the crash logs below. Please check them and provide a solution to fix it.

Fatal Exception: io.flutter.plugins.firebase.crashlytics.FlutterError: Null check operator used on a null value. Error thrown Instance of 'ErrorDescription'. at PusherBeams.handleCallback(pusher_beams.dart:290) at CallbackHandlerApi.setup.(method_channel_pusher_beams.dart:404) at CallbackHandlerApi.setup.(method_channel_pusher_beams.dart:391) at BasicMessageChannel.setMessageHandler.(platform_channel.dart:77) at BasicMessageChannel.setMessageHandler.(platform_channel.dart:76) at _DefaultBinaryMessenger.setMessageHandler.(binding.dart:380) at _DefaultBinaryMessenger.setMessageHandler.(binding.dart:377)

Additional Details:

  1. Pusher Beam version - 1.0.2
  2. Platform - Android
akshaydoshi2 commented 1 year ago

Experiencing the same issue as mentioned by @Arunachalam-G while addDeviceInterest or removeDeviceInterest

Pusher Beam version - 1.1.1 Platform - iOS

-- Update -- the deviceInterests are getting added and removed. The exception is called during execution of handleCallback.

======== Exception caught by services library ======================================================
The following _CastError was thrown during a platform message callback:
Null check operator used on a null value

When the exception was thrown, this was the stack: 
#0      PusherBeams.handleCallback (package:pusher_beams/pusher_beams.dart:329:44)
#1      CallbackHandlerApi.setup.<anonymous closure> (package:pusher_beams_platform_interface/method_channel_pusher_beams.dart:430:15)
#2      BasicMessageChannel.setMessageHandler.<anonymous closure> (package:flutter/src/services/platform_channel.dart:197:49)
#3      _DefaultBinaryMessenger.setMessageHandler.<anonymous closure> (package:flutter/src/services/binding.dart:387:35)
#4      _invoke2 (dart:ui/hooks.dart:186:13)
#5      _ChannelCallbackRecord.invoke (dart:ui/channel_buffers.dart:42:5)
#6      _Channel.push (dart:ui/channel_buffers.dart:132:31)
#7      ChannelBuffers.push (dart:ui/channel_buffers.dart:329:17)
#8      PlatformDispatcher._dispatchPlatformMessage (dart:ui/platform_dispatcher.dart:599:22)
#9      _dispatchPlatformMessage (dart:ui/hooks.dart:89:31)
====================================================================================================
benjamin-tang-pusher commented 1 year ago

Hi, are either of you using the flutter webview plugin in your apps?

akshaydoshi2 commented 1 year ago

@benjamin-tang-pusher Hey, yes I am using the flutter webview plugin in my app.

Arunachalam-G commented 1 year ago

Hi, are either of you using the flutter webview plugin in your apps?

Hi, I'm not using flutter webview plugin in my app.

benw-pusher commented 1 year ago

Hi @Arunachalam-G @akshaydoshi2 , are you able to share a short code snippet that replicates the issue? Does the issue happen every time you call addDeviceInterest or removeDeviceInterest?

benw-pusher commented 11 months ago

Our suspicion is that this was caused by when also using the flutter webview plugin but the mixed responses appears to contradict this - however we haven't had any replication samples to help with investigation so we'll have to close this. However if you need further support here please contact us at https://support.pusher.com/hc/en-us/requests/new