2017-06-29 3 views
2

ich tue einen Android-App mit TwitterLogin Integration mit Twitter Api zu bekommen. Hier verwende ich kein Twitter 4j und Fabric. Ich bin in der Lage, den Twitter-Benutzernamen zu erhalten, kann aber keine E-Mail-ID erhalten. hat mehr nach diesem Problem gesucht, aber nichts mit twitter api bekommen. Ich folgte diesen twitterAPIWie Benutzerdaten von Twitter-API in Android-Anwendung

einloggen und dies ist mein Code

twitterLoginButton.setCallback(new Callback<TwitterSession>() { 
       @Override 
       public void success(Result<TwitterSession> result) { 

        System.out.println("=======twitterlogin success======="); 

        String username=result.data.getUserName(); 

        getUsertwitteremail(); 
       } 

       @Override 
       public void failure(TwitterException exception) { 
        System.out.println("=======twitterlogin failure=========="); 
       } 
      }); 

bitte jemand mir helfen, die Details einschließlich E-Mail zu erhalten.

+0

aber ich habe diese https://twittercommunity.com/t/how-we-can-get-email-address-with-users-detail-using-api/882/28 bitte überprüfen sie es – basha

+0

diesen Link zu prüfen. Es wird Ihnen helfen, E-Mail-Adresse des Benutzers zu erhalten. https://dev.twitter.com/twitterkit/android/log-in-with-twitter – AmmY

Antwort

1

Zuerst stellen Sie sicher, dass anfordern E-Mail-Adressen von Benutzern für Ihre Twitter-App Schauen Sie sich den Code und die E-Mail-

mTwitterAuthClient.authorize(this, new com.twitter.sdk.android.core.Callback<TwitterSession>() { 
      @Override 
      public void success(Result<TwitterSession> twitterSessionResult) { 
       TwitterSession session = TwitterCore.getInstance().getSessionManager().getActiveSession(); 
       TwitterAuthToken authToken = session.getAuthToken(); 
       String token = authToken.token; 
       String secret = authToken.secret; 
       long userId = session.getUserId(); 
       String userNa = session.getUserName(); 
       Log.d("twitter check", userNa + " " + secret); 

       mTwitterAuthClient.requestEmail(session, new Callback<String>() { 
        @Override 
        public void success(Result<String> result) { 
         Log.d("email", result.data); 
         // Do something with the result, which provides the email address 
        } 

        @Override 
        public void failure(TwitterException exception) { 
         // Do something on failure 
        } 
       }); 
      } 

      @Override 
      public void failure(TwitterException e) { 
       e.printStackTrace(); 
      } 
     }); 
+0

immer null Antwort für E-Mail- – basha

+0

Sie diesen Code auf onActivityResult gesetzt haben ?? Überprüfen Sie auch die App Geheimnis sowie das Token ... und versuchen Sie es erneut mTwitterAuthClient.onActivityResult (requestCode, Result, Daten); –

+0

@basha. Sie müssen eine Benutzer-E-Mail von Ihrem Twitter-Bewerbungs-Dashboard anfordern, stellen Sie sicher, dass Sie diese Option aktivieren, [folgen Sie dieser Antwort für eine Erklärung] (https://stackoverflow.com/a/47816326/4846859) –

Verwandte Themen