Android facebook sdk n'appelle pas de rappel après la connexion
Aider,
Je suis en train de faire une classe qui gère facebook login dans mon application.
Mon problème est qu'il ne fonctionne pas sur toutes les activités.
Sur cette activité, il ne marche pas appeler la fonction de rappel.
Après la connexion, et d'autoriser l'application webview est de faire disparaître, le rappel ne marche pas le feu.
le dernier état qui les a imprimés dans le Logcat est OUVERTURE
Voici mon code:
public void doLogin() {
if ((Session.getActiveSession() == null || !Session.getActiveSession().isOpened())) {
List<String> permissions = new ArrayList<String>();
permissions.add("email");
//start Facebook Login
openActiveSession(activity, true, new Session.StatusCallback() {
//callback when session changes state
@Override
public void call(Session session, SessionState state,
Exception exception) {
Log.d("Sessionstate", state.toString());
if (session.isOpened()) {
//make request to the /me API
Request.executeMeRequestAsync(session,
new Request.GraphUserCallback() {
@Override
public void onCompleted(GraphUser user,
Response response) {
if (prgCheckFB.isShowing())
prgCheckFB.dismiss();
if (user != null) {
Log.e("facebookid", id);
doSomething(user);
}
}
});
}
}, permissions);
}
}
private static Session openActiveSession(Activity activity,
boolean allowLoginUI, Session.StatusCallback callback,
List<String> permissions) {
Session.OpenRequest openRequest = new Session.OpenRequest(activity)
.setPermissions(permissions).setCallback(callback);
Session session = new Session.Builder(activity).build();
if (SessionState.CREATED_TOKEN_LOADED.equals(session.getState())
|| allowLoginUI) {
Session.setActiveSession(session);
session.openForRead(openRequest);
return session;
}
return null;
}
doSomething est la fonction qui permettra de sauver les données de l'utilisateur dans une commune préférence.
Est-il quelque chose de mal? La fonction travaille dans une activité, mais pas TOUTES les activités.
Merci
- signifie que vous êtes en mesure d'obtenir la page de connexion ou pas???
- oui, mais le rappel de pas de tir après la page de connexion fini
- cela signifie lorsque vous appuyez sur le bouton de connexion, vous n'êtes pas en mesure de vous connecter. Droite!!!!!
- je pense que j'ai connecté à FB, parce que, après la page de connexion, je me suis redirigé vers la page d'autorisation.
- alors quel est le problème que vous rencontrez???
- Je veux faire quelque chose après le FB est bien connecté. Mais, le retour d'appel de ne pas me faire virer à tous. Ainsi, la doSomething fonction n'est jamais appelée.
Vous devez vous connecter pour publier un commentaire.
vous oubliez peut-être pour traiter les résultats après la connexion...
vérifier la remplacer la méthode onActivityResult..
car il gérer les résultats à l'MainActivity,
peut-être que cela peut aider votre problème..
Mise à jour de 1
Pour les nouveaux SDK utilisation:
FacebookCallback<LoginResult>
quelqu'un a rencontré ce? comment voulez-vous résoudre?Ayant l'attribut
android:noHistory="true"
pour votre rappel de l'activité dans le AndroidManifest.xml fichier entraînera également avec les méthodes de rappel pas de tir.android:noHistory="true"
àcom.facebook.FacebookActivity
activité dans AndroidManifest.xml sauvé ma journée ! merci