Ho integrato il kit twitter nella mia app ios seguendo questo https://dev.twitter.com/twitter-kit/ios/configure. Potrei accedere dopo l'autenticazione e vedere facilmente il mio nome twitter, ma ora voglio recuperare il mio indirizzo e-mail così ho usato TWTRShareEmailViewController che presenta all'utente una vista e-mail condivisa che restituisce null. Ho esaminato i documenti in cui hanno menzionato la mia app da autorizzare per richiedere l'autorizzazione via e-mail e ha detto di compilare questo modulo https://support.twitter.com/forms/platform non riuscendo a capire cosa fare dopo? come ottenere l'autorizzazione per l'e-mail dell'utente esattamente? Suggerire qualsiasi aiuto Grazie in anticipo.come richiedere il permesso per recuperare l'email dell'utente utilizzando il kit di twitter versione 1.2.0 in ios8?
risposta
Non ho trovato un modulo specifico per chiedere di essere nè autorizzato. Sono andato sul loro modulo di collegamento https://support.twitter.com/forms/platform e ho controllato l'opzione "Ho una domanda di politica API non coperta da questi punti". Hanno risposto alcuni giorni dopo e mi hanno chiesto ulteriori informazioni sull'applicazione e il suo ID app. In realtà sto aspettando la loro risposta.
EDIT:
Così, dopo diversi (un sacco) e-mail con [email protected] e qualche bug ho finalmente ottenuto whitelist. Ma l'opzione non è attualmente disponibile con Fabric, quindi dovrai creare un'app Twitter su apps.twitter.com. Basta inviare una mail con il tuo ID app o le tue chiavi. Probabilmente ti chiederanno una breve descrizione della tua app e non ci vorrà molto tempo per essere autorizzata. In bocca al lupo!
Dopo aver conversato con [email protected]
, ho ricevuto la mia app nella whitelist. Ecco la storia:
inviare una mail a
[email protected]
con alcuni dettagli sulla tua app come chiave dei consumatori, collegamento App Store di un App, Collegamento a norme sulla privacy, i metadati, le istruzioni su come accedere al nostro App. Indica nella mail che desideri accedere all'indirizzo email dell'utente all'interno della tua app.Esamineranno l'app e risponderanno entro 2-3 giorni lavorativi.
Una volta che la tua app è autorizzata, aggiorna le impostazioni dell'app nel portale per gli sviluppatori di Twitter. Accedi a apps.twitter.com e:
- Nella scheda 'Impostazioni', aggiungere termini di servizio e l'informativa sulla privacy URL
- Nella scheda 'Permessi', modificare la portata dei vostri token per richiedere e-mail. Questa opzione sarà visibile solo dopo che la tua app è stata autorizzata.
E 'tempo di codice:
-(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)
}
}
Speranza che aiuta !!!
Grazie per i passaggi dettagliati. Sfortunatamente, l'e-mail che ho inviato a [email protected] è stata restituita come non recapitabile. Invierò la mia email a [email protected] come suggerito dall'altro poster e come ultima risorsa, passa attraverso il loro modulo di supporto e spero che arrivi nel posto giusto. –
@NSPratik Il metodo sopra non è valido da domani, puoi aiutarmi con il nuovo metodo. Controlla qui "https://docs.fabric.io/ios/twitter/request-user-email-address.html" –
Invia email a [email protected]
per autorizzare prima l'app di accesso twitter.
Swift 3.0 Codice in tessuto
@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);
}
}
}
Grazie Signore! Codice impressionante: thumbsUp –
Tutto funziona correttamente in questo codice tranne che per ottenere l'indirizzo email: restituisce nil. –
@Fadwa_lmh, hai ottenuto la tua app Twitter autorizzata inviando un'email a [email protected]? –
Ho affrontato lo stesso problema di recente
Ecco cosa si dovrebbe provare se si utilizza nuovo kit Twitter
Vai
- https://apps.twitter.com/
- Seleziona la scheda permessi
- Set per leggere Solo
Codice:
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 {
}
Come arrivare id-mail in twitter?
Fase 1: got a https://apps.twitter.com/app/
Fase 2: cliccare su ur app> fare clic sulla scheda il permesso.
Fase 3: controllare qui la casella di posta elettronica
- 1. Come recuperare il nome di un utente di Twitter utilizzando Twitter 4j
- 2. Come ottenere l'immagine del profilo in Android utilizzando il kit Twitter,
- 3. Kit Twitter - iOS
- 4. Come richiedere la versione mobile utilizzando file_get_contents() in PHP?
- 5. Come richiedere l'API di Twitter 1.1 utilizzando il tuo oauth_token concesso?
- 6. come richiedere il permesso di pubblicare annunci su una pagina come app?
- 7. Il kit Twitter genera un errore nonostante l'accesso effettuato correttamente
- 8. Il singhiozzo di iOS8 + Unity3D
- 9. Come recuperare la versione di Java utilizzando il comando a linea singola in Linux
- 10. Come conservare il permesso per il file in git?
- 11. Come recuperare il nome Enum utilizzando l'ID?
- 12. Come impostare il permesso per il file su MODE_WORLD_READABLE
- 13. Chiedere il permesso utilizzando il nuovo SDK PHP (3.X.X)
- 14. Aggiungere il parametro di richiesta per richiedere
- 15. Come verificare il permesso di licenza Android per altre applicazioni
- 16. Come impostare il permesso WRITE_SECURE_SETTINGS in Android?
- 17. Come recuperare il paese dell'utente utilizzando l'API Graph di Facebook?
- 18. Come aggiungere il file di configurazione al classpath di tutti gli esecutori Spark in Spark 1.2.0?
- 19. Attendi il permesso utente
- 20. Come richiedere il Garbage Collector in node.js per l'esecuzione?
- 21. come usare il token github api in python per richiedere
- 22. Come si può compilare il codice C# per richiedere un determinato linguaggio o versione del compilatore?
- 23. Come ottenere JMeter per richiedere il contenuto gzip?
- 24. il permesso revocato android.permission.CALL_PHONE
- 25. Come posso recuperare il numero di versione di un file EXE o DLL di Windows?
- 26. Utilizzando richiedere senza esportazione
- 27. Come recuperare l'immagine del poster dell'album usando Photo Kit?
- 28. Come implementare completamento automatico per l'indirizzo utilizzando Apple Map Kit
- 29. Come recuperare la versione di sdk per android?
- 30. Come recuperare solo nuove e-mail utilizzando il protocollo POP3
Dopo molte ricerche ho scoperto che Twitter non supporta l'autorizzazione e-mail per iOS e Android, così ci aveva escluso Twitter Login dalla nostra app e basta utilizzando Facebook e collegato come il nostro requisito principale era quello di ottenere e-mail ad ogni costo. Si prega di aggiornare se trovate qualsiasi modifica su di esso. grazie ... – Mak13
Oggi ho avuto una risposta e mi hanno detto che non stavo facendo la mia domanda nel posto giusto. Mi hanno suggerito di controllare la documentazione dell'API (cosa che ho già fatto ovviamente) e di cercare nella discussione degli sviluppatori (cosa che ho fatto anche io). Quindi penso di non essere pronto per essere autorizzato nella whitelist ... Quando dici che non supportano il permesso via email, questo è vero anche se sei autorizzato da Twitter? Non puoi proprio chiederlo a tutti? –
Penso che possiamo ottenere e-mail se la nostra app è autorizzata coz se ci forniscono TWTRShareEmailViewController, allora ha senso supportare l'autorizzazione via e-mail se non capisco perché lo hanno fornito, ma ancora una volta sorge la domanda come faccio a farmi app in whitelist. Dai un'occhiata a questo https://blog.twitter.com/2014/introducing-fabric e vedi il segno su twitter para quello che dice. Aggiorna cosa devo fare per ottenere l'autorizzazione della app. – Mak13