Obtenez Facebook ID utilisateur du kit SDK d'android 4.0
Comment puis-je obtenir le Facebook ID Utilisateur avec le Facebook SDK Android 4.0?
Voici mon code qui ne fonctionne pas:
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(getApplicationContext());
setContentView(R.layout.activity_firstlogin);
CallbackManager cm;
LoginButton lb;
cm = CallbackManager.Factory.create();
lb = (LoginButton) findViewById(R.id.facebook_button);
Log.d(TAG, "Salut les zouzous");
LoginManager.getInstance().registerCallback(cm,
new FacebookCallback<LoginResult>()
{
@Override
public void onSuccess(LoginResult loginResult)
{
Log.d(TAG, "Success !");
AccessToken tok;
tok = AccessToken.getCurrentAccessToken();
Log.d(TAG, tok.getUserId());
}
@Override
public void onCancel()
{
Log.d(TAG, "On Cancel");
}
@Override
public void onError(FacebookException exception)
{
Log.e(TAG, exception.getMessage());
}
});
Je précise que les
Log.d(TAG, " Success");
ne pas imprimer.
Il n'est que le premier journal qui imprimer quelque chose, en dehors de la fonction de rappel.
Désolé pour le mauvais anglais.
OriginalL'auteur Jidey | 2015-04-22
Vous devez vous connecter pour publier un commentaire.
Aussi simple que
Ceci suppose que l'utilisateur est déjà connecté.
OriginalL'auteur Markymark
Vous devez effectuer les opérations suivantes
vérifier la mise à jour de réponse.
Merci, que de la compilation, mais qui ne vous connectez pas n'importe quoi 🙁
son une demande asynchrone, essayez d'attendre une minute. et essayez de vous connecter à nouveau.
Ne fonctionne toujours pas, je vous laisser savoir que je suis déjà connecté au facebook sdk, de sorte que lorsque je clique sur "se Connecter avec facebook" bouton il y a seulement un peu tourner pendant une seconde puis plus rien.
OriginalL'auteur Murtaza Khursheed Hussain
suffit d'utiliser
loginResult.getAccessToken().getUserId()
dans onSuccess() commeOriginalL'auteur Hafiz Muneeb
Si vous utilisez le Bouton de Connexion qui est fourni par Facebook puis je pense qu'au lieu de
LoginManager.getInstance().registerCallback()
vous devez utiliser
lb.registerCallback()
Qui pourrait expliquer pourquoi votre callback n'est-ce pas de tir à tous.
****edit****
Si votre rappel encore ne sont pas de tir et vous avez seulement besoin du nom d'utilisateur, vous pourrait aller pour AccessToken Suivi la place.
Facebook offre un exemple où vous substituez la méthode onActivityResult de l'Activité/la Fragment que vous avez déclaré le bouton:
Je m'attends à au moins l'un de ceux de rappel de journaux pour le feu une fois le rappel est lié au bouton. Tout le reste dans votre code ressemble à elle correspond à l'exemple sur le Facebook du site. C'était la seule erreur évidente pour moi.
J'ai édité ma réponse avec une autre solution de la docs, mais j'ai juste repéré quelque chose d'autre qui pourrait être la peine d'essayer en premier. Déplacer le CallbackManager cm de la ligne de onCreate et de le déclarer dans l'Activité en lieu et place de sorte que toutes les méthodes d'accès.
OriginalL'auteur Keab42