J'ai le code suivant. C'est un test simple de la fonction de rappel du loginbutton dans l'API Android de Facebook.
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); FacebookSdk.sdkInitialize(getApplicationContext()); setContentView(R.layout.activity_main); callbackManager = CallbackManager.Factory.create(); LoginButton loginButton = (LoginButton)findViewById(R.id.login_button); loginButton.setReadPermissions("user_friends"); loginButton.setReadPermissions("email"); loginButton.setReadPermissions("public_profile"); loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() { @Override public void onSuccess(LoginResult loginResult) { Log.e("SUCCESS", "LOGIN SUCCESSFUL"); } @Override public void onCancel() { Log.e("CANCEL", "Cancelled"); } @Override public void onError(FacebookException e) { Log.e("ERROR", "Facebook Exception"); } }); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); callbackManager.onActivityResult(requestCode, resultCode, data); }
4 Réponses :
J'ai rencontré ce problème. P>
Il semble être le cas que si vous essayez de vous connecter (en utilisant C'est-à-dire que vous ne devez pas vous enregistrer dans l'utilisateur car l'utilisateur est déjà connecté. Vérifiez pour cette première. P> loginwithreadpermissions code> ou
loginwithpublishpermissions code>) lorsque vous avez déjà un jeton d'accès (avec toutes les autorisations requises) Ensuite, le rappel code> Oncancel est exécuté. P>
Ma solution: p>
J'ai eu le même problème. Le rappel a toujours été reçu par J'effectue une connexion native (ce qui signifie que j'utilisais l'application Facebook), alors après avoir parlé avec un compagnon de travail, j'ai annulé mon application Facebook pour vérifier si une connexion non indigène était possible et exécutez mon application. À ma surprise, avant de recevoir le rappel sur la méthode Il fonctionne maintenant et affiche même la boîte de dialogue Autorisations. Ce que je veux dire avec ceci est que toujours essaie natif et non natif. Peut-être que vous obtenez la réponse de l'un d'entre eux? P> oncancel () code> méthode. P>
Oncancel () Code>, un message m'a informé mon Facebook App ID strong> était faux, c'est tout ce qui était tout. J'avais copié un mauvais au lieu de celui que vous obtenez de https://developers.facebook.com/apps . P>
Comme Facebook nécessite maintenant un examen des applications qui utilisent l'accès à Publish, vous devez vous connecter à la console de développeurs Facebook, dans la section Apps, sélectionnez votre application, cliquez sur Rôles et ajoutez le rôle de testeur (ou d'administrateur). Après cela, vous devriez être capable d'obtenir un jeton d'accès approprié. P>
Vous enregistrez ma journée Gabriel :) Merci!
quelqu'un peut-il s'il vous plaît dites-moi le processus complet
Cette réponse m'a aidé dans une situation similaire. P>
https://stackoverflow.com/a/31625256/1987045 p>
appel loginmanager.getinstance (). Déconnexion (); code> avant de tenter une connexion. P>
Ce n'est pas d'impression d'erreur ni de succès?
Non, il ne s'agit que d'étiqueter
Est-ce que cela va toujours à Oncancel ()?
Oui, ça va toujours à Oncancel ()
@Thelonelyyak Avez-vous trouvé une solution pour cela?