mwaylabs / flutter-apns

Flutter Plugin for Push notification servers
MIT License
144 stars 146 forks source link

flutter_apns will casue error when initializing Firebase #99

Open kidozh opened 2 years ago

kidozh commented 2 years ago

As is illustrated in the title, the plugin will cause the following error when firebase is initilized:

[ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)
#0      FirebaseCoreHostApi.initializeCore (package:firebase_core_platform_interface/src/pigeon/messages.pigeon.dart:199:7)
<asynchronous suspension>
#1      MethodChannelFirebase._initializeCore (package:firebase_core_platform_interface/src/method_channel/method_channel_firebase.dart:29:44)
<asynchronous suspension>
#2      MethodChannelFirebase.initializeApp (package:firebase_core_platform_interface/src/method_channel/method_channel_firebase.dart:73:7)
<asynchronous suspension>
#3      Firebase.initializeApp (package:firebase_core/src/firebase.dart:40:31)
<asynchronous suspension>
#4      main (package:fulcrum/main.dart:18:3)
<asynchronous suspension>

the error comes from the line

await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform);

In this issue, the author points out that flutter_apns doesn't using the upgraded version of flutterfire and make it happen.

I upgraded all the dependencies including flutter_apns (1.6.0) and firebase_messaging (12.0.1) and this error still occurs. After removing flutter_apns, the firebase can normally get initialized without any error. When adding it back to the dependencies and without adding any code, the Unhandled Exception shows up when initializing firebase messaging.

So there is a conflict between flutter_apns and firebase_messaging but I don't know the exact reason.

conradfeyt commented 2 years ago

Getting the same issue with 1.6.0

sseen commented 2 years ago

Also encountered the same problem, before updating, you can avoid it this way.

flutter_apns: #^1.6.0
    git: https://github.com/sseen/flutter-apns.git
heyask commented 1 year ago

adding following option in info.plist solved this problem.

<key>flutter_apns.disable_swizzling</key>
<true/>