2015-11-18 2 views
5

Je suis en train de demander l'e-mail d'un utilisateur en utilisant la connexion twitter et il me retourne toujours l'erreur suivanteDemande email avec Twitter

com.twitter.sdk.android.core.TwitterException: Your application may not have access to email addresses or the user may not have an email address. To request access, please visit https://support.twitter.com/forms/platform. 

J'ai suivi toutes les étapes pour développer cette demande email page de tissu. J'ai demandé l'accès à Twitter et ils m'ont répondu avec un email de confirmation et j'ai configuré tous les éléments nécessaires dans mon panneau de contrôle de gestion d'applications, mais la demande d'email m'envoie toujours à la méthode d'échec et rejette cette exception.

une idée?

private void twitterConfig() { 
    TwitterAuthConfig authConfig = 
      new TwitterAuthConfig("Consumer Key (API Key)", 
        "Consumer Secret (API Secret"); 

    Fabric.with(this, new Twitter(authConfig)); 
    twitterLoginButton.setCallback(new Callback<TwitterSession>() { 
     @Override 
     public void success(Result<TwitterSession> result) { 
      TwitterSession session = result.data; 
      String msg = "@" + session.getUserName() + " logged in! (#" + session.getUserId() + ")"; 
      TwitterAuthClient authClient = new TwitterAuthClient(); 
      authClient.requestEmail(session, new Callback<String>() { 
       @Override 
       public void success(Result<String> result) { 
        System.out.println(); 
       } 

       @Override 
       public void failure(TwitterException exception) { 
        notificationManager.showMessage(getString(R.string.error_cant_get_login)); 
       } 
      }); 
     } 

     @Override 
     public void failure(TwitterException exception) { 
      notificationManager.showMessage(getString(R.string.error_generic)); 
     } 
    }); 
} 
+0

@Munon vous avez résolu ce problème? Je suis confronté à ce problème .. plz m'aider. –

Répondre

0

Comme il est indiqué au bas de la documentation:

Même si l'utilisateur accorde l'accès à son adresse e-mail, il est garanti, vous obtiendrez une adresse e-mail. Par exemple, si quelqu'un s'est inscrit à Twitter avec un numéro de téléphone au lieu d'une adresse e-mail, le champ e-mail peut être vide. Lorsque cela se produit, la méthode d'échec est appelée car aucune adresse électronique n'est disponible.

+2

Merci pour la réponse. J'ai lu cette déclaration mais j'essaie avec mon utilisateur de Twitter et j'ai une adresse e-mail valide, donc ce n'est pas le problème – Mun0n

+0

même problème. Ne pas donner d'email même si enregistré par email. –

+0

Non @RahulRastogi, j'ai perdu la foi dans la connexion Twitter, désolé – Mun0n

0

Oui Oui C'est vrai. Vous devez modifier les paramètres d'autorisation à partir de l'onglet Autorisation de l'application sélectionnée.

https://apps.twitter.com/app/PROJECT_ID/permissions

enter image description heredes autorisations supplémentaires

Ces autorisations supplémentaires exigent que vous fournissiez des URL à votre application ou la politique de confidentialité du service et les conditions de service. Vous pouvez configurer ces champs dans vos paramètres d'application. Demander des adresses e-mail aux utilisateurs

Cela activera après quelques heures/minutes une fois que vous avez changé.

TwitterAuthClient authClient = new TwitterAuthClient(); 
authClient.requestEmail(session, new Callback <String>() { 
@Override 
public void success(Result <String> result) { 
    // Do something with the result, which provides the email address 

    Log.v("log_tag", "success email true > " + result.data); 
} 

@Override 
public void failure(TwitterException exception) { 
    // Do something on failure 
    Log.v("log_tag", "success email false > " + exception); 

} 
}); 

As neeeko said Ce n'est pas garanti que vous obtiendrez une adresse e-mail.

Merci

+1

J'ai suivi même et se connecter avec email, mais toujours ne pas obtenir l'email ID de twitter –

+1

avez-vous la demande pour les e-mails des paramètres de l'application? –

+0

avez-vous résolu le problème – Sangeetha