web-dev-qa-db-fra.com

SERVER_ERROR: [code] 1675030 [message]: Erreur lors de l'exécution de la requête

J'utilise la connexion Facebook sous Android.
Code:

callbackManager = CallbackManager.Factory.create();
    LoginButton loginButton = (LoginButton) this.findViewById(R.id.login_button);
    loginButton.setReadPermissions("email", "public_profile");
    loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {
            // App code
            Log.println(Log.ASSERT, "FB", "inicio session ");
        }

        @Override
        public void onCancel() {
            Log.println(Log.ASSERT, "FB", "OP NO completada");
            // App code
        }

        @Override
        public void onError(FacebookException exception) {
            Log.println(Log.ASSERT, "FB", " Errro de sesion ");
            exception.printStackTrace();
            // App code
        }
    });

mais en obtenant toujours l'erreur suivante:

SERVER_ERROR: [code] 1675030 [message]: erreur lors de l'exécution de la requête . [extra]: erreurs lors de l'exécution de l'opération "ProxyAuthAppLoginQuery": At Query.proxy_auth_app_login: Echec de la résolution du champ. W/System.err:
à com.facebook.login.LoginManager.onActivityResult (LoginManager.Java:190) W/System.err: à com.facebook.login.LoginManager $ 1.onActivityResult (LoginManager.Java:159) W/System.err: à com.facebook.internal.CallbackManagerImpl.onActivityResult (CallbackManagerImpl.Java:82) W/System.err: à com.procibernetica.moca.MainActivity.onActivityResult (MainActivity.Java:130) W/System.err: à Android.app.Activity.dispatchActivityResult (Activity.Java:5423) W/System.err: à Android.app.ActivityThread.deliverResults (ActivityThread.Java:3401) W/System.err: à Android.app.ActivityThread.handleSendResult (ActivityThread.Java:3448) W/System.err: à Android.app.ActivityThread.access $ 1300 (ActivityThread.Java:138) W/System.err: à Android.app.ActivityThread $ H.handleMessage (ActivityThread.Java:1284) W/System.err: à Android.os.Handler.dispatchMessage (Handler.Java:102) W/System.err:
sur Android.os.Looper.loop (Looper.Java:149) W/System.err: at Android.app.ActivityThread.main (ActivityThread.Java:5061) W/System.err: à Java.lang.reflect.Method.invokeNative (Méthode native ) W/System.err: à Java.lang.reflect.Method.invoke (Method.Java:515) W/System.err: at com.Android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.Java:787) W/System.err: à com.Android.internal.os.ZygoteInit.main (ZygoteInit.Java:603) W/System.err: à dalvik.system.NativeStart.main (méthode native)

J'ai ajouté les autorisations suivantes.

<uses-permission Android:name="Android.permission.INTERNET"/>
<uses-permission Android:name="Android.permission.ACCESS_NETWORK_STATE"/>
36
Daniel ORTIZ

Je trouve la solution, cela s’ajoute lorsque vous n’avez pas d’évaluation des utilisateurs dans votre application.

Entrez dans votre panneau AppSelect Rol

 enter image description here

Et ajoutez des utilisateurs test, lorsque vous essayez de vous connecter avec des utilisateurs test, l'application s'exécute sans échec

 enter image description here

45
Daniel ORTIZ

@Danial answer correct, mais je veux ajouter quelque chose à cela. Ce type d'erreur ne survient que lorsque l'application est en cours de développement. Suivez ce lien _ et sélectionnez votre application. Ensuite, vous pouvez faire deux choses ici. À partir de l'onglet Roles, vous pouvez autoriser la connexion à vos amis uniquement. Vous pouvez également sélectionner App Review et créer votre app public afin que tout le monde puisse se connecter.

20
AMAN SINGH

La documentation sur facebook n'est pas correcte. Je devais ajouter les 3 autorisations par défaut pour que cela fonctionne.

loginButton.setReadPermissions("email", "public_profile", "user_friends");
19
aloha

Le problème était similaire car l'interface utilisateur de Firebase spécifiait le Android:value. Voici comment je l'ai résolu:

    <application
    Android:icon="@mipmap/ic_launcher"
    Android:label="@string/app_name"
    Android:theme="@style/AppTheme.Base">

    <meta-data
        Android:name="com.facebook.sdk.ApplicationId"
        tools:replace="Android:value"
        Android:value="@string/facebook_app_id" />
<acitivity
...
</activity>
...
14
CacheMeOutside

Toutes les réponses ci-dessus ne m'ont pas aidé, qu'est-ce qui s'est passé lorsque vous avez utilisé cette commande

keytool -exportcert -alias androiddebugkey -keystore ~/.Android/debug.keystore | openssl sha1 -binary | openssl base64

pour obtenir les hachages de clés que vous avez mis dans les configurations facebook.

il vous demandera un mot de passe; au début, je n'en ai pas défini. Le problème est donc survenu lorsque j'ai entré Android comme mot de passe. ça a marché !

8
Ahmad El-Melegy

Mode développeur en direct Veuillez vérifier l’état du mode développeur. Ce doit être "Live" . Tout d'abord, vous devez ajouter l'URL de confidentialité pour votre propre projet facebook que vous souhaitez tester sur Facebook ou sur qh .... Ensuite, activez le mode développeur (Activer)

3
Thanh vũ

Outre les autres réponses, veuillez également vérifier que l'adresse de messagerie du compte utilisé pour vous connecter est vérifiée.

2
Muddassir Ahmed

Cette erreur est également renvoyée, même lorsque votre application est publique ou que vous êtes répertorié en tant que testeur. 

Vérifiez que votre

<meta-data Android:name="com.facebook.sdk.ApplicationId" Android:value="@string/facebook_app_id"/>

se résout en un identifiant d'application Facebook correct, en particulier si vous le spécifiez de manière dynamique à l'aide de la génération dégradée, plutôt que de le coder en dur dans strings.xml.

2
Voy

Dans mon cas, la clé de hachage générée était fausse car j'utilisais une mauvaise OpenSSL . J'utilisais openssl-0.9.8k_X64.Zip au lieu de openssl-0.9.8e_X64.Zip, ce qui m'a généré une mauvaise clé de hachage qui a causé ce problème J'espère que ça aide quelqu'un que j'ai perdu pendant 8 heures à essayer de comprendre cela.

2
Ivan

Dans mon cas, le problème était mal généré avec le hachage qui doit être soumis sur la page de l'application Facebook. La solution trouvée dans cet article https://developers.facebook.com/docs/facebook-login/Android/advanced

Vérifier manuellement le hachage de la clé - Vous pouvez imprimer le hachage de la clé envoyé à Facebook et utiliser cette valeur dans App Dashboard. Apportez cette modification à onCreate () dans votre activité principale:

try 
{
    PackageInfo info = getPackageManager().getPackageInfo(
                        "com.facebook.samples.loginhowto",
                        PackageManager.GET_SIGNATURES);

    for (Signature signature : info.signatures) {
        MessageDigest md = MessageDigest.getInstance("SHA");
        md.update(signature.toByteArray());
        Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
    }
} catch (NameNotFoundException e) {  


} catch (NoSuchAlgorithmException e) {  

}
2
user954174

Ajouter une ressource de chaîne "facebook_application_id" dans votre strings.xml

remplacez APP_ID par votre identifiant d'application facebook

<string name="facebook_application_id" translatable="false">APP_ID</string>
1
S.D