chemerisuk / cordova-plugin-firebase-authentication

Cordova plugin for Firebase Authentication
MIT License
98 stars 60 forks source link

Subtle Incompatibility between cordova-plugin-firebase-auth and cordova-plugin-firebase #38

Open jordancrombie opened 6 years ago

jordancrombie commented 6 years ago

Hi there,

It seems like perhaps there may be an incompatibility between cordova-plugin-firebase-auth and cordova-plugin-firebase. When running either of these two plugins independently, there is no issue in compile, but when these two are used in conjunction, I always seem to get the following errors:

/Users/jcrombie/Application_Building/SellMeToys/platforms/ios/SellMeToys/Plugins/cordova-plugin-firebase-authentication/FirebaseAuthenticationPlugin.m:41:41: Incompatible block pointer types sending 'void (^)(FIRAuthDataResult __strong, NSError strong)' to parameter of type 'FIRAuthResultCallback _Nullable' (aka 'void (^)(FIRUser * _Nullable strong, NSError * _Nullable __strong)')

/Users/jcrombie/Application_Building/SellMeToys/platforms/ios/SellMeToys/Plugins/cordova-plugin-firebase-authentication/FirebaseAuthenticationPlugin.m:88:37: Incompatible block pointer types sending 'void (^)(FIRAuthDataResult __strong, NSError strong)' to parameter of type 'FIRAuthResultCallback _Nullable' (aka 'void (^)(FIRUser * _Nullable strong, NSError * _Nullable __strong)')

/Users/jcrombie/Application_Building/SellMeToys/platforms/ios/SellMeToys/Plugins/cordova-plugin-firebase-authentication/FirebaseAuthenticationPlugin.m:95:53: Incompatible block pointer types sending 'void (^)(FIRAuthDataResult __strong, NSError strong)' to parameter of type 'FIRAuthResultCallback _Nullable' (aka 'void (^)(FIRUser * _Nullable strong, NSError * _Nullable __strong)')

Plugin List:

macbook34:ios$ cordova plugins cordova-plugin-browsertab 0.2.0 "cordova-plugin-browsertab" cordova-plugin-buildinfo 2.0.1 "BuildInfo" cordova-plugin-compat 1.2.0 "Compat" cordova-plugin-customurlscheme 4.3.0 "Custom URL scheme" cordova-plugin-firebase 1.0.5 "Google Firebase Plugin" cordova-plugin-firebase-authentication 1.0.1 "cordova-plugin-firebase-authentication" cordova-plugin-firebase-dynamiclinks 1.0.0 "FirebaseDynamicLinksPlugin" cordova-plugin-inappbrowser 3.0.0 "InAppBrowser" cordova-plugin-whitelist 1.3.3 "Whitelist" cordova-universal-links-plugin 1.2.1 "Universal Links Plugin"

I have tried adding one first, then the other (both ways)...clean/cleanBuildFolder, and clearing derived data...

Each works splendidly on their own, but together...not so much (at least for me)

Here is the pods in use here

macbook34:ios jcrombie$ cat Podfile.lock PODS:

DEPENDENCIES:

SPEC REPOS: https://github.com/cocoapods/specs.git:

SPEC CHECKSUMS: Firebase: d66f4f29c23f22d96808d9abc174d81d8eee968f FirebaseAnalytics: b3628aea54c50464c32c393fb2ea032566e7ecc2 FirebaseAuth: 096e457cdd4274412a66c4a35874787e411f5a03 FirebaseCore: 42b3267233bd21a5abd54117ccc38ca3dd0f8e83 FirebaseInstanceID: f3f0657372592ecdfdfe2cac604a5a75758376a6 GoogleToolboxForMac: 91c824d21e85b31c2aae9bb011c5027c9b4e738f GTMSessionFetcher: 5fa5b80fd20e439ef5f545fb2cb3ca6c6714caa2 nanopb: 5601e6bca2dbf1ed831b519092ec110f66982ca3

PODFILE CHECKSUM: 98899dd330043c312eb531d66cfc5c9813310161

COCOAPODS: 1.5.3

I noted that some flutter users were also having this issue here:

https://stackoverflow.com/questions/50251316/xcode-build-error-for-flutter-with-firebase-auth-plugin-on-beta-0-3-2-incompat

However, the prescribed fix of just running a pod repo update didnt seem to work....

If you have any suggestions?

felaray commented 6 years ago

same here. not work for ios.

use plugin: cordova-plugin-firebase 1.0.5 "Google Firebase Plugin" cordova-plugin-firebase-authentication 1.0.1 "cordova-plugin-firebase-authentication"

raphael-santos commented 6 years ago

Hi, we are facing the same issue.

3 errors on IOS XCode Build (Semantic Issue) - Incompatible block pointer types sending ... On Methods:

$ cordova plugin list cordova-android-support-gradle-release 1.4.2 "cordova-android-support-gradle-release" cordova-open-native-settings 1.4.1 "Native settings" cordova-plugin-console 1.1.0 "Console" cordova-plugin-crosswalk-webview 2.3.0 "Crosswalk WebView Engine" cordova-plugin-device 1.1.6 "Device" cordova-plugin-dialogs 1.2.1 "Notification" cordova-plugin-firebase 1.0.5 "Google Firebase Plugin" cordova-plugin-firebase-authentication 1.0.1 "cordova-plugin-firebase-authentication" cordova-plugin-splashscreen 4.0.3 "Splashscreen" cordova-plugin-statusbar 2.4.1 "StatusBar" cordova-plugin-whitelist 1.2.2 "Whitelist" cordova-plugin-x-socialsharing 5.1.8 "SocialSharing" cordova-support-android-plugin 0.4.1 "cordova-support-android-plugin" cordova-support-google-services 1.1.0 "cordova-support-google-services" es6-promise-plugin 4.1.0 "Promise"

raphael-santos commented 6 years ago

We have made an alternative test. We have removed those 3 methods of files FirebaseAuthenticationPlugin.m and FirebaseAuthenticationPlugin.h.

After that, the build sematic phase has passed. However, it failed on another poit. We've got the linking error: "Apple Mach-O Linker ...".

am5815 commented 4 years ago

Guys any updates with this?

Rahulchavan34 commented 4 years ago

Hey guys, we have the same problem. Has anyone found an solution to this ? Any help will be much appreciated!