twitter - password - correo gmail
¿Cómo solicitar permiso para recuperar el correo electrónico del usuario usando Twitter kit versión 1.2.0 en iOS 8? (5)
No encontré un formulario específico para solicitar que no se incluya en la lista blanca. Seguí su enlace de formulario https://support.twitter.com/forms/platform y marqué la opción "Tengo una pregunta de política de API no cubierta por estos puntos". Respondieron unos días después y me pidieron más información sobre la aplicación y su ID de aplicación. De hecho, estoy esperando su respuesta.
EDITAR:
Así que después de varios (muchos) correos electrónicos con [email protected] y algunos errores, finalmente obtuve la lista blanca. Pero la opción no está disponible actualmente en Fabric, por lo que tendrás que crear una aplicación de Twitter en apps.twitter.com . Simplemente envíe un correo con su ID de aplicación o sus llaves. Probablemente le pidan una descripción rápida de su aplicación y no debería tomar tanto tiempo para incluirla en la lista blanca. ¡Buena suerte!
He integrado el kit de Twitter en mi aplicación iOS siguiendo https://dev.twitter.com/twitter-kit/ios/configure esto. Pude iniciar sesión después de la autenticación y ver mi nombre de Twitter fácilmente, pero ahora quiero recuperar mi dirección de correo electrónico, así que utilicé TWTRShareEmailViewController, que presenta al usuario una vista de correo electrónico compartido que devuelve nulo. Revisé los documentos en los que mencionaban que mi aplicación se incluiría en la lista blanca para solicitar el permiso por correo electrónico y me dijeron que cumplimentara este formulario https://support.twitter.com/forms/platform. ¿No tengo qué hacer ahora? cómo obtener el permiso de usuario de correo electrónico exactamente? Sugerir alguna ayuda. Gracias por adelantado.
Después de mantener una conversación con [email protected]
, obtuve mi aplicación en la lista blanca. Aquí está la historia:
Envíe un correo electrónico a
[email protected]
con algunos detalles sobre su aplicación como clave para el consumidor, enlace de la App Store de una aplicación, enlace a la política de privacidad, metadatos, instrucciones sobre cómo iniciar sesión en nuestra aplicación. Mencione en el correo que desea acceder a la dirección de correo electrónico del usuario dentro de su aplicación.Revisarán su aplicación y le responderán dentro de 2 a 3 días hábiles.
Una vez que digan que su aplicación está en la lista blanca, actualice la configuración de su aplicación en el portal de desarrolladores de Twitter. Inicie sesión en apps.twitter.com y:
- En la pestaña "Configuración", agregue los términos de servicio y la URL de la política de privacidad
- En la pestaña "Permisos", cambie el alcance de su token para solicitar un correo electrónico. Esta opción solo se verá una vez que su aplicación se incluya en la lista blanca.
Es hora de codificar:
-(void)requestUserEmail
{
if ([[Twitter sharedInstance] session]) {
TWTRShareEmailViewController *shareEmailViewController =
[[TWTRShareEmailViewController alloc]
initWithCompletion:^(NSString *email, NSError *error) {
NSLog(@"Email %@ | Error: %@", email, error);
}];
[self presentViewController:shareEmailViewController
animated:YES
completion:nil];
} else {
// Handle user not signed in (e.g. attempt to log in or show an alert)
}
}
Espero eso ayude !!!
Envíe un correo electrónico a [email protected]
para [email protected]
en la lista blanca su aplicación de inicio de sesión de Twitter.
Swift 3.0 Código con tela
@IBAction func btnTwitterAction(_ sender: AnyObject) {
Twitter.sharedInstance().logIn { (session, error) in
if session != nil {
print("signed in as /(session!.userName)");
let client = TWTRAPIClient.withCurrentUser()
let request = client.urlRequest(withMethod: "GET",
url: "https://api.twitter.com/1.1/account/verify_credentials.json?include_email=true",
parameters: ["include_email": "true", "skip_status": "true"],
error: nil)
client.sendTwitterRequest(request) { response, data, connectionError in
if (connectionError == nil) {
do{
let json = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! [String:Any]
print("Json response: ", json)
let firstName = json["name"]
let lastName = json["screen_name"]
let email = json["email"]
print("First name: ",firstName)
print("Last name: ",lastName)
print("Email: ",email)
} catch {
}
}
else {
print("Error: /(connectionError)")
}
}
} else {
NSLog("Login error: %@", error!.localizedDescription);
}
}
}
Me he enfrentado al mismo problema recientemente
Esto es lo que deberías probar si estás usando un nuevo kit de twitter
Ir
- https://apps.twitter.com/
- Seleccionar pestaña de permisos
- Establézcalo en Solo lectura
Código:
Twitter.sharedInstance().logIn(withMethods: [.webBased,.systemAccounts,.all]) {(session, error) -> Void in
if (session != nil) {
print("signed in as /(session?.userName)");
let client = TWTRAPIClient(userID: session?.userName)
client.loadUser(withID: (session?.userID)!, completion: { (user, error) in
let twitterClient = TWTRAPIClient.withCurrentUser()
let request = twitterClient.urlRequest(withMethod: "GET",
url: "https://api.twitter.com/1.1/account/verify_credentials.json",
parameters: ["include_email": "true", "skip_status": "true"],
error: nil)
twitterClient.sendTwitterRequest(request) { response, data, connectionError in
print(data!)
let s :String = String(data: data! as Data, encoding: String.Encoding.utf8)!
//
// let json = try JSONSerialization.jsonObject(with: responseData as Data, options: JSONSerialization.ReadingOptions.mutableLeaves) as? [String:AnyObject]
//
Twitter.sharedInstance().sessionStore.logOutUserID((session?.userID)!)
if let data = s.data(using: String.Encoding.utf8) {
do {
let json = try JSONSerialization.jsonObject(with: data, options: .mutableContainers) as? [String:Any]
print(json!)
} catch {
print("Something went wrong")
}
}
}
})
} else {
}
¿Cómo obtener el ID de correo electrónico en twitter?
Paso 1: llegué a https://apps.twitter.com/app/
Paso 2: haz clic en tu aplicación> haz clic en la pestaña de permisos.
Paso 3: aquí revisa el cuadro de correo electrónico