Solicitud de correo electrónico con Twitter

Estoy tratando de solicitar el correo electrónico de un usuario usando el inicio de sesión de twitter y siempre me devuelve el siguiente error

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. 

He seguido todos los pasos para desarrollar esta solicitud de correo electrónico en la página de la tela. He solicitado el acceso a twitter y me han contestado con un correo electrónico de confirmación y he configurado todos los elementos necesarios en mi panel de control de administración de aplicaciones de Twitter, pero la solicitud de correo electrónico siempre me envía al método de fallo y lanzar esa excepción.

¿alguna idea?

 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)); } }); } 

Como se indica en la parte inferior de la documentación :

Incluso si el usuario concede acceso a su dirección de correo electrónico, no está garantizado que recibirá una dirección de correo electrónico. Por ejemplo, si alguien se ha registrado en Twitter con un número de teléfono en lugar de una dirección de correo electrónico, el campo de correo electrónico puede estar vacío. Cuando esto sucede, el método de fallo se llamará porque no hay ninguna dirección de correo electrónico disponible.

I Sí Es cierto. Debe cambiar la configuración de permisos de la ficha de permiso dentro de la aplicación seleccionada.

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

Introduzca aquí la descripción de la imagen Permisos adicionales

Estos permisos adicionales requieren que proporcione URLs a la política de privacidad y los términos de servicio de su aplicación o servicio. Puede configurar estos campos en la Configuración de la aplicación. Solicitar direcciones de correo electrónico a los usuarios

Eso permitirá después de algunas horas / min una vez que cambie.

 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); } }); 

Como dijo neeeko No está garantizado que usted recibirá una dirección de correo electrónico.

Gracias

  • Detectar Twitter enviar Android
  • Twitter Cómo obtener el perfil de usuario pic usando el plugin Fabric en android Studio (Fixed)
  • Compartir en facebook, twitter a través de share android objetivo
  • Android twitter4j autenticación a través de la aplicación de twitter instalado no navegador
  • Publicar un tweet con la API de Android
  • Por qué este error '- La aplicación de sólo lectura no puede POST'
  • 403: La solicitud se entiende, mensaje - SSL es necesario código - 92, pero se ha rechazado Twitter Android
  • Cómo configurar un diseño de menú principal en Android?
  • ¿Cómo obtener información de usuario de twitter en la aplicación android?
  • Android OAuth: Excepción en retrieveAccessToken ()
  • Adición de twitter-kit al proyecto de estudio de Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.