Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Flutter 2.0 web version with firebase messaging is not working

Flutter application is designed for mobile and web. We are using firebase_messaging for messaging funtioanlity. It was working charm earlier. Recently we upgraded our Flutter SDK to 2.0 version (Channel stable, 2.0.4).

And the application works as like earlier in mobile version. But while executing in web version gives me the below mentioned error and was unable to solve.

Following command already tried to disable null safety but no use.

flutter run --no-sound-null-safety

Error logs:

Debug service listening on ws://127.0.0.1:53789/y22KqzTNKwU=/ws

Running with unsound null safety
For more information see https://dart.dev/null-safety/unsound-null-safety
Debug service listening on ws://127.0.0.1:53789/y22KqzTNKwU=/ws
TypeError: Cannot read property 'isSupported' of undefined
    at new firebase_messaging_web.FirebaseMessagingWeb.new (http://localhost:53495/packages/firebase_messaging_web/firebase_messaging_web.dart.lib.js:189:51)
    at Function.registerWith (http://localhost:53495/packages/firebase_messaging_web/firebase_messaging_web.dart.lib.js:56:73)
    at Object.registerPlugins (http://localhost:53495/packages/pca_app/generated_plugin_registrant.dart.lib.js:44:49)
    at main (http://localhost:53495/web_entrypoint.dart.lib.js:44:35)
    at main.next (<anonymous>)
    at runBody (http://localhost:53495/dart_sdk.js:39051:34)
    at Object._async [as async] (http://localhost:53495/dart_sdk.js:39082:7)
    at main$ (http://localhost:53495/web_entrypoint.dart.lib.js:43:18)
    at http://localhost:53495/main_module.bootstrap.js:19:10
    at Array.forEach (<anonymous>)
    at window.$dartRunMain (http://localhost:53495/main_module.bootstrap.js:18:32)
    at <anonymous>:1:8
    at Object.runMain (http://localhost:53495/dwds/src/injected/client.js:8656:21)
    at http://localhost:53495/dwds/src/injected/client.js:22068:19
    at _wrapJsFunctionForAsync_closure.$protected (http://localhost:53495/dwds/src/injected/client.js:3830:15)
    at _wrapJsFunctionForAsync_closure.call$2 (http://localhost:53495/dwds/src/injected/client.js:10905:12)
    at Object._asyncStartSync (http://localhost:53495/dwds/src/injected/client.js:3794:20)
    at main__closure1.$call$body$main__closure (http://localhost:53495/dwds/src/injected/client.js:22080:16)
    at main__closure1.call$1 (http://localhost:53495/dwds/src/injected/client.js:22007:19)
    at StaticClosure._rootRunUnary [as call$2$5] (http://localhost:53495/dwds/src/injected/client.js:4153:16)
    at _CustomZone.runUnary$2$2 (http://localhost:53495/dwds/src/injected/client.js:12136:39)
    at _CustomZone.runUnaryGuarded$1$2 (http://localhost:53495/dwds/src/injected/client.js:12068:14)
    at _ControllerSubscription._sendData$1 (http://localhost:53495/dwds/src/injected/client.js:11697:19)
    at _DelayedData.perform$1 (http://localhost:53495/dwds/src/injected/client.js:11849:59)
    at _PendingEvents_schedule_closure.call$0 (http://localhost:53495/dwds/src/injected/client.js:11898:14)
    at Object._microtaskLoop (http://localhost:53495/dwds/src/injected/client.js:3990:24)
    at StaticClosure._startMicrotaskLoop (http://localhost:53495/dwds/src/injected/client.js:3996:11)
    at _AsyncRun__initializeScheduleImmediate_internalCallback.call$1 (http://localhost:53495/dwds/src/injected/client.js:10774:9)
    at invokeClosure (http://localhost:53495/dwds/src/injected/client.js:1250:26)
    at MutationObserver.<anonymous> (http://localhost:53495/dwds/src/injected/client.js:1269:18)

Flutter doctor report:

> Doctor summary (to see all details, run flutter doctor -v): [√]
> Flutter (Channel stable, 2.0.4, on Microsoft Windows [Version
> 10.0.18363.1441], locale en-GB) [√] Android toolchain - develop for Android devices (Android SDK version 30.0.2) [√] Chrome - develop for
> the web [√] Android Studio (version 4.0) [√] VS Code (version 1.41.1)
> [√] Connected device (2 available)
> 
> • No issues found!
like image 829
Raghu Mudem Avatar asked Apr 08 '21 08:04

Raghu Mudem


People also ask

How do I subscribe to topic in flutter firebase messaging?

To subscribe to a topic, call subscribeToTopic() with the topic name. This method returns a Future , which resolves when the subscription succeeded: await FirebaseMessaging. instance.

How do I send notifications using firebase in flutter?

To send a notification, go to Firebase Console → Cloud Messaging and click on Send your first message. Then enter the Title and body field. If you wish to send it to a particular device then click on Send test message and enter the FCM registration token. (Enter the current FCM registration token).


1 Answers

Updated September 2021:


Add this 8.6.1 SDK to your index.html, and It should look like this layout.

<script src="https://www.gstatic.com/firebasejs/8.6.1/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/8.6.1/firebase-messaging.js"></script>

So far, it's the recommended one. Running it without errors on Stable channel 2.5.0 and

  firebase_messaging: ^10.0.3
  firebase_messaging_web: ^2.0.2
  firebase_core: ^1.6.0
  firebase_core_web: ^1.1.0
like image 110
Huthaifa Muayyad Avatar answered Oct 07 '22 10:10

Huthaifa Muayyad