firebase / flutterfire

🔥 A collection of Firebase plugins for Flutter apps.
https://firebase.google.com/docs/flutter/setup
BSD 3-Clause "New" or "Revised" License
8.72k stars 3.97k forks source link

Firebase_Auth error code 89 #12144

Closed christianfunginet closed 10 months ago

christianfunginet commented 10 months ago

Bug report

Describe the bug I use Twitter_Loging plugin to preccess login after got loged into Twitter got credentials When use this credentials got error 89

Steps to reproduce

Steps to reproduce the behavior:

1.pubspec.yaml name: mushing description: "A new Flutter project." publish_to: 'none' version: 1.0.0+1

environment: sdk: '>=3.2.3 <4.0.0'

dependency_overrides: http: ^0.13.1

dependencies: flutter: sdk: flutter

cupertino_icons: ^1.0.2 flutter_riverpod: ^2.4.0 riverpod_annotation: ^2.1.5

flutter_localizations: sdk: flutter intl: any

font_awesome_flutter: ^10.4.0 video_player: ^2.8.2 visibility_detector: ^0.4.0+2 google_fonts: ^6.1.0 go_router: ^13.0.1 permission_handler: ^11.1.0

gallery_saver: ^2.3.2

image_picker: ^1.0.4 provider: ^6.0.5 shared_preferences: ^2.1.1 firebase_core: ^2.24.2 firebase_auth: ^4.16.0 firebase_messaging: ^14.7.10 firebase_database: ^10.2.5 cached_network_image: ^3.2.3 cloud_functions: ^4.3.1

transparent_image: ^2.0.1 google_sign_in: ^6.1.5 flutter_facebook_auth: ^6.0.3 dio: ^5.3.3 connectivity: ^3.0.6 universal_io: ^2.2.2 carousel_slider: ^4.2.1 like_button: ^2.0.5 video_compress: ^3.1.2 video_thumbnail: ^0.5.3 file_picker: ^6.1.1

cached_video_player: ^2.0.4

exif: ^3.2.1 flutter_map: ^6.1.0 location: ^5.0.0 latlong2: ^0.9.0 image_stack: ^2.1.1 flutter_form_builder: ^9.1.1 form_builder_validators: ^9.0.0 mercadopago_sdk: ^1.3.0 awesome_card: ^1.1.7 expandable_bottom_sheet: ^1.1.1+1 flutter_native_splash: ^2.3.4 flutter_svg: ^2.0.8 animate_do: ^3.1.2 flutter_launcher_icons: ^0.13.1 crypto: ^3.0.3 swipe_to: ^1.0.2

file_saver: ^0.2.6

syncfusion_flutter_pdfviewer: ^24.1.44 flutter_downloader: ^1.11.5 device_info_plus: ^9.1.1 widgets_to_image: ^0.0.2 flutter_chat_ui: ^1.6.10 record: ^5.0.4 flutter_audio_waveforms: ^1.2.1+8 just_audio: ^0.9.34 marquee: ^2.2.3 localstorage: ^4.0.1+4 flutter_chat_types: ^3.6.2 path_provider: ^2.1.1 camera: ^0.9.8 twitter_login: ^4.4.2 twitter_auth_firebase: ^0.5.0

flutter_launcher_icons: android: "launcher_icon" ios: true image_path: "assets/logo/mushing_image_gradient.png" min_sdk_android: 21 # android min sdk min:16, default 21 adaptive_icon_foreground: "assets/logo/mushing_image_gradient.png" adaptive_icon_background: "#77202f" web: generate: true image_path: "assets/logo/mushing_image_gradient.png" background_color: "#77202f" theme_color: "#77202f" windows: generate: true image_path: "assets/logo/mushing_image_gradient.png" icon_size: 48 # min:48, max:256, default: 48 macos: generate: true image_path: "assets/logo/mushing_image_gradient.png"

dev_dependencies: build_runner: riverpod_generator: ^2.3.2

flutter_test: sdk: flutter

integration_test: sdk: flutter

flutter: generate: true uses-material-design: true

assets:

flutter_intl: enabled: true

  1. AndroidManifest.xml
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.dst.mushing">

    <application android:label="mushing" android:name="${applicationName}" android:icon="@mipmap/launcher_icon"> <provider android:name="vn.hunghd.flutterdownloader.DownloadedFileProvider" android:authorities="${applicationId}.flutter_downloader.provider" android:exported="false" android:grantUriPermissions="true"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/provider_paths"/> <meta-data android:name="com.google.firebase.messaging.default_notification_icon" android:resource="@mipmap/launcher_icon" /> <activity android:name=".MainActivity" android:exported="true" android:launchMode="singleTop" android:theme="@style/LaunchTheme" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode" android:hardwareAccelerated="true" android:windowSoftInputMode="adjustResize">

        <meta-data
          android:name="io.flutter.embedding.android.NormalTheme"
          android:resource="@style/NormalTheme"
          />
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
    
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <!-- Accepts URIs that begin with "example://gizmos” -->
            <!-- Registered Callback URLs in TwitterApp -->
            <data
                android:host=""
                android:scheme="mushing" /> <!-- host is option -->
        </intent-filter>
    </activity>
    <!-- Don't delete the meta-data below.
         This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
    <meta-data
        android:name="flutterEmbedding"
        android:value="2" />
    <!--FACEBOOK-->
    <meta-data 
        android:name="com.facebook.sdk.ApplicationId" 
        android:value="@string/facebook_app_id"/>
    <meta-data 
        android:name="com.facebook.sdk.ClientToken" 
        android:value="@string/facebook_client_token"/>        
    <activity 
        android:name="com.facebook.FacebookActivity"
        android:configChanges=
                "keyboard|keyboardHidden|screenLayout|screenSize|orientation"
        android:label="@string/app_name" />
    <activity
        android:name="com.facebook.CustomTabActivity"
        android:exported="true">
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="@string/fb_login_protocol_scheme" />
        </intent-filter>
    </activity>
    <!--FIN FACEBOOK-->

  1. E/flutter (26925): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: [firebase_auth/invalid-credential] {"errors":[{"code":89,"message":"Invalid or expired token."}]} ] E/flutter (26925): #0 FirebaseAuthHostApi.signInWithCredential (package:firebase_auth_platform_interface/src/pigeon/messages.pigeon.dart:1070:7) E/flutter (26925): E/flutter (26925): #1 MethodChannelFirebaseAuth.signInWithCredential (package:firebase_auth_platform_interface/src/method_channel/method_channel_firebase_auth.dart:295:22) E/flutter (26925): E/flutter (26925): #2 FirebaseAuth.signInWithCredential (package:firebase_auth/src/firebase_auth.dart:514:9) E/flutter (26925): E/flutter (26925): #3 AuthenticationRepository.twitterSignUp (package:mushing/features/authentication/repos/authentication_repo.dart:93:12) E/flutter (26925): E/flutter (26925): #4 SignupViewModel.twitterSignUp (package:mushing/features/authentication/view_models/signup_view_model.dart:156:28) E/flutter (26925): E/flutter (26925):

Expected behavior

A clear and concise description of what you expected to happen.

Sample project

Providing a minimal example project which demonstrates the bug in isolation from your main App greatly enhances the chance of a timely fix. Please link to the public repository URL.


Additional context

Add any other context about the problem here.


Flutter doctor

Run flutter doctor and paste the output below:

[√] Flutter (Channel stable, 3.16.5, on Microsoft Windows [Versi¢n 10.0.19045.3803], locale es-AR) • Flutter version 3.16.5 on channel stable at C:\src\flutter • Upstream repository https://github.com/flutter/flutter.git • Framework revision 78666c8dc5 (3 weeks ago), 2023-12-19 16:14:14 -0800 • Engine revision 3f3e560236 • Dart version 3.2.3 • DevTools version 2.28.4 [√] Windows Version (Installed version of Windows is version 10 or higher) [√] Android toolchain - develop for Android devices (Android SDK version 30.0.3) • Android SDK at C:\Users\christian\AppData\Local\Android\sdk • Platform android-34, build-tools 30.0.3 • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java • Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840) • All Android licenses accepted. [√] Chrome - develop for the web • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe [√] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.3.1) • Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community • Visual Studio Community 2022 version 17.3.32811.315 • Windows 10 SDK version 10.0.19041.0 [√] Android Studio (version 2021.2) • Android Studio at C:\Program Files\Android\Android Studio • Flutter plugin can be installed from: https://plugins.jetbrains.com/plugin/9212-flutter • Dart plugin can be installed from: https://plugins.jetbrains.com/plugin/6351-dart • Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840) [√] VS Code (version 1.85.1) • VS Code at C:\Users\christian\AppData\Local\Programs\Microsoft VS Code • Flutter extension version 3.80.0 [√] Connected device (4 available) • 5048A (mobile) • 7P55V8NFFE59SSA6 • android-arm64 • Android 9 (API 28) • Windows (desktop) • windows • windows-x64 • Microsoft Windows [Versi¢n 10.0.19045.3803] • Chrome (web) • chrome • web-javascript • Google Chrome 120.0.6099.200 • Edge (web) • edge • web-javascript • Microsoft Edge 120.0.2210.121 [√] Network resources • All expected network resources are available. • No issues found! ``` PASTE OUTPUT INSIDE HERE ```

Flutter dependencies

Dart SDK 3.2.3 Flutter SDK 3.16.5 mushing 1.0.0+1

dependencies:

dev dependencies:

dependency overrides:

transitive dependencies:

PASTE OUTPUT INSIDE HERE


darshankawar commented 10 months ago

@christianfunginet The plugin you are using is third party to Firebase. Flutterfire provides custom auth providers for Twitter and other platforms that you should use. Check https://firebase.google.com/docs/reference/js/v8/firebase.auth.TwitterAuthProvider and see if using it, you get same error or not.

For error you are getting, it is better suited for support channels like StackOverflow, so please ask the same there. Closing from here.

christianfunginet commented 10 months ago

Dear darshankawar: Thanks a lot for your response. In order to reference you send me Im usin flutter on android platform. When use firebase example for twitter i get "Operation was canceled by user" and when I use Twitter_loging plugin error code 89. I will try another way insted.