Domanda

avevo fatto l'applicazione Twitter utilizzando l'OAuth e MGTwitterEngine Biblioteca. La fase di login sta funzionando benissimo, ma io sono di fronte problema in logout. Avevo cui tutti i post di disconnessione per OAuth ma non funziona. Così chiunque può suggerire il metodo perfetto per il logout dal Twitter ...? O Ciò che cambia devo fare nel file di libreria per la disconnessione .. !!

È stato utile?

Soluzione

Non c'è alcun segno fuori da Twitter OAuth / xauth ... è necessario implementare una soluzione lato client:

  1. persistentemente memorizzare il token di accesso nel portachiavi o CoreData (che non scade mai, a meno che l'utente revocare l'applicazione dalla sua / il suo account) quando login e utilizzarlo in chiamate successive a twitter e "mantenere l'utente firmato a"
  2. al momento della firma out eliminare tutti i dati correlati memorizzati (in questo caso il token di accesso)

speranza che aiuterà

Altri suggerimenti

Qualcuno ha mai trovato la soluzione per questo? Se è così, si prega di inviare!

UPDATE: Ho capito. Nel MGTwitterEngine.m, cercare _clearCookies nel metodo initWithDelegate. Questo è attualmente impostata su NO, cambiarlo in SI. Nel suo metodo di azione per il logout dell'utente corrente, chiamata [_engine clearAccessToken]. Ora eseguirlo, e voilà, funziona!

Non so come il logout. Ma se si desidera che la schermata di login ogni volta, fare una cosa (io non so che questo è il modo giusto), eliminare i dati di accesso specifici che il motore salva in Userdefaults.

non vedo ha dichiarato esplicitamente qui, ma ho usato la funzione "clearAccessToken" nel SA_OAuthTwitterEngine a "uscire" l'utente corrente.

Potrebbe essere i tipi di stupido, ma questo sembra funzionare

- (IBAction)logout:(id)sender {
    [_engine dealloc];
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    [defaults removeObjectForKey:@"authData"];
    [defaults synchronize];

    [self presentLoginView];
    }

Io uso questo tutorial a Twitter integreate per iOS link

Per il logout io uso successivo:

[_engine clearAccessToken];

_engine -. Questo è istanza della classe SA_OAuthTwitterEngine

È possibile chiamare questo metodo sul tuo metodo di IBAction.

Anche bisogno di questo metodo

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    [defaults removeObjectForKey:@"authData"];
    [defaults synchronize];

È necessario eliminare il tuo account in applicazione Twitter che si trova nel menu Impostazioni del vostro iPhone.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top