darwin-morocho / flutter-facebook-auth

A flutter plugin to add login with facebook in your flutter app
193 stars 127 forks source link

{HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Object with ID 'MY_FB_APP_ID' does not exist, cannot be loaded due to missing permissions, or does not support this operation. #29

Closed jezsung closed 3 years ago

jezsung commented 3 years ago

Whenever I started my app, {HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Object with ID 'MY_FB_APP_ID' does not exist, cannot be loaded due to missing permissions, or does not support this operation. was logged on my console while the login process looks working fine in development mode. Do I have to do something to get rid of this error?

darwin-morocho commented 3 years ago

Whenever I started my app, {HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Object with ID 'MY_FB_APP_ID' does not exist, cannot be loaded due to missing permissions, or does not support this operation. was logged on my console while the login process looks working fine in development mode. Do I have to do something to get rid of this error?

Make sure that you has been configured the plugin on Android and iOS

jezsung commented 3 years ago

Whenever I started my app, {HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Object with ID 'MY_FB_APP_ID' does not exist, cannot be loaded due to missing permissions, or does not support this operation. was logged on my console while the login process looks working fine in development mode. Do I have to do something to get rid of this error?

Make sure that you has been configured the plugin on Android and iOS

I did on Android and tested on Android. I didn't configure for iOS yet. And login seems working fine but this error still comes up.

darwin-morocho commented 3 years ago

Whenever I started my app, {HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Object with ID 'MY_FB_APP_ID' does not exist, cannot be loaded due to missing permissions, or does not support this operation. was logged on my console while the login process looks working fine in development mode. Do I have to do something to get rid of this error?

Make sure that you has been configured the plugin on Android and iOS

Also please provide your code to check the permissions granted when the login was successful and the user data that you are trying to access

jezsung commented 3 years ago

Whenever I started my app, {HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Object with ID 'MY_FB_APP_ID' does not exist, cannot be loaded due to missing permissions, or does not support this operation. was logged on my console while the login process looks working fine in development mode. Do I have to do something to get rid of this error?

Make sure that you has been configured the plugin on Android and iOS

Also please provide your code to check the permissions granted when the login was successful and the user data that you are trying to access

Here's my code. I'm using it with Firebase Auth.

Future<bool> signInWithFacebook() async {
    final result = await _facebookAuth.login();
    if (result.status != 200) return false;
    final credential = FacebookAuthProvider.credential(result.accessToken.token);
    try {
      await _auth.currentUser.linkWithCredential(credential);
    } on FirebaseAuthException catch (e) {
      switch (e.code) {
        case 'credential-already-in-use':
        case 'email-already-in-use':
          await _auth.signInWithCredential(credential);
          break;
        default:
          rethrow;
          break;
      }
    }
    return true;
  }

And these are the permission I got image

The error occurred when the app started not when the function executed

darwin-morocho commented 3 years ago

Whenever I started my app, {HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Object with ID 'MY_FB_APP_ID' does not exist, cannot be loaded due to missing permissions, or does not support this operation. was logged on my console while the login process looks working fine in development mode. Do I have to do something to get rid of this error?

Make sure that you has been configured the plugin on Android and iOS

Also please provide your code to check the permissions granted when the login was successful and the user data that you are trying to access

Here's my code. I'm using it with Firebase Auth.

Future<bool> signInWithFacebook() async {
    final result = await _facebookAuth.login();
    if (result.status != 200) return false;
    final credential = FacebookAuthProvider.credential(result.accessToken.token);
    try {
      await _auth.currentUser.linkWithCredential(credential);
    } on FirebaseAuthException catch (e) {
      switch (e.code) {
        case 'credential-already-in-use':
        case 'email-already-in-use':
          await _auth.signInWithCredential(credential);
          break;
        default:
          rethrow;
          break;
      }
    }
    return true;
  }

And these are the permission I got image

The error occurred when the app started not when the function executed

The code that you provided is not enough because I am not sure what is the code that your are using when the apo start. Please check the example code and tell me if the error persist I think the problem is a bad implementation

jezsung commented 3 years ago

Whenever I started my app, {HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Object with ID 'MY_FB_APP_ID' does not exist, cannot be loaded due to missing permissions, or does not support this operation. was logged on my console while the login process looks working fine in development mode. Do I have to do something to get rid of this error?

Make sure that you has been configured the plugin on Android and iOS

Also please provide your code to check the permissions granted when the login was successful and the user data that you are trying to access

Here's my code. I'm using it with Firebase Auth.

Future<bool> signInWithFacebook() async {
    final result = await _facebookAuth.login();
    if (result.status != 200) return false;
    final credential = FacebookAuthProvider.credential(result.accessToken.token);
    try {
      await _auth.currentUser.linkWithCredential(credential);
    } on FirebaseAuthException catch (e) {
      switch (e.code) {
        case 'credential-already-in-use':
        case 'email-already-in-use':
          await _auth.signInWithCredential(credential);
          break;
        default:
          rethrow;
          break;
      }
    }
    return true;
  }

And these are the permission I got image The error occurred when the app started not when the function executed

The code that you provided is not enough because I am not sure what is the code that your are using when the apo start. Please check the example code and tell me if the error persist I think the problem is a bad implementation

I found that the error is logged before my app code is executed. The error doesn't show up when I hot-restarted my app. I'm not sure if I miss some configuration but login works fine. I will get back after testing on iOS.

jezsung commented 3 years ago

Whenever I started my app, {HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Object with ID 'MY_FB_APP_ID' does not exist, cannot be loaded due to missing permissions, or does not support this operation. was logged on my console while the login process looks working fine in development mode. Do I have to do something to get rid of this error?

Make sure that you has been configured the plugin on Android and iOS

Also please provide your code to check the permissions granted when the login was successful and the user data that you are trying to access

Here's my code. I'm using it with Firebase Auth.

Future<bool> signInWithFacebook() async {
    final result = await _facebookAuth.login();
    if (result.status != 200) return false;
    final credential = FacebookAuthProvider.credential(result.accessToken.token);
    try {
      await _auth.currentUser.linkWithCredential(credential);
    } on FirebaseAuthException catch (e) {
      switch (e.code) {
        case 'credential-already-in-use':
        case 'email-already-in-use':
          await _auth.signInWithCredential(credential);
          break;
        default:
          rethrow;
          break;
      }
    }
    return true;
  }

And these are the permission I got image The error occurred when the app started not when the function executed

The code that you provided is not enough because I am not sure what is the code that your are using when the apo start. Please check the example code and tell me if the error persist I think the problem is a bad implementation

On iOS, the log doesn't come up but I have no ideas why the log keeps coming up on Android. I decided to just ignore it cuz it comes before the app started and no effect on my app.

darwin-morocho commented 3 years ago

Whenever I started my app, {HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Object with ID 'MY_FB_APP_ID' does not exist, cannot be loaded due to missing permissions, or does not support this operation. was logged on my console while the login process looks working fine in development mode. Do I have to do something to get rid of this error?

Make sure that you has been configured the plugin on Android and iOS

Also please provide your code to check the permissions granted when the login was successful and the user data that you are trying to access

Here's my code. I'm using it with Firebase Auth.

Future<bool> signInWithFacebook() async {
    final result = await _facebookAuth.login();
    if (result.status != 200) return false;
    final credential = FacebookAuthProvider.credential(result.accessToken.token);
    try {
      await _auth.currentUser.linkWithCredential(credential);
    } on FirebaseAuthException catch (e) {
      switch (e.code) {
        case 'credential-already-in-use':
        case 'email-already-in-use':
          await _auth.signInWithCredential(credential);
          break;
        default:
          rethrow;
          break;
      }
    }
    return true;
  }

And these are the permission I got image The error occurred when the app started not when the function executed

The code that you provided is not enough because I am not sure what is the code that your are using when the apo start. Please check the example code and tell me if the error persist I think the problem is a bad implementation

On iOS, the log doesn't come up but I have no ideas why the log keeps coming up on Android. I decided to just ignore it cuz it comes before the app started and no effect on my app.

Please try the new version of this library

nixcode1 commented 3 years ago

Hello, how was this error solved, I'm currently facing it and my login fails

darwin-morocho commented 3 years ago

Hello, how was this error solved, I'm currently facing it and my login fails

If you have this error in release mode maybe you need add a release hash in you facebook console. Also make sure that you have been configured your strings.xml, AndroidManifest.xml check the documentation for that.

Check this example https://github.com/meedu-app/flutter-facebook-login-example to see a good configuration on iOS and Android.

You can clone that project and change with your credentials to check if the problem persist.

nixcode1 commented 3 years ago

Thank you, it seemed keytool generate an incorrect dev hash.

Converting my SHA-1 for firebase/google-sign-in to base64 and uploading that string to my facebook app worked.

Thanks for the help

faisalmushtaq007 commented 3 years ago

{HttpStatus: 400, errorCode: 2500, subErrorCode: -1, errorType: OAuthException, errorMessage: An active access token must be used to query information about the current user.} Unhandled Exception: PlatformException(FAILED, Attempt to invoke virtual method 'java.lang.String org.json.JSONObject.toString()' on a null object reference, null, null)

I am getting this error, can somebody help here please

darwin-morocho commented 3 years ago

An active access token must be used to query information about the current user

it seems you are trying to get the user data without an active session

Anonymousgaurav commented 1 year ago

Thank you, it seemed keytool generate an incorrect dev hash.

Converting my SHA-1 for firebase/google-sign-in to base64 and uploading that string to my facebook app worked.

Thanks for the help

i'm still getting error after placing right hash key