2011-10-10 5 views
8


Android app Facebook: l'accesso di scadenza del token (expires_in) è sempre 0

Sto sviluppando un'applicazione che utilizza l'integrazione di Facebook. Sto cercando di ricevere access_token e expires_in token dalle classi della libreria di Facebook. Una volta effettuato l'accesso, ottengo correttamente access_token ma ottengo sempre token expires_in sempre 0. E a causa di ciò il metodo ISessionValid() restituisce sempre false. Gentilmente fammi sapere se qualcuno ha affrontato questo problema e risolto.

Il mio codice funziona perfettamente quando non ho installato l'app di Facebook nell'emulatore. Ottengo la visualizzazione Web e posso accedere e aggiornare lo stato. Ma quando installo l'app di Facebook, facendo clic sull'opzione del menu di stato dell'aggiornamento si apre l'app di Facebook, mi viene reindirizzato alla pagina delle autorizzazioni e poi viene visualizzato un messaggio di errore "Impossibile ricevere il token di accesso". Infatti, poiché il token expires_in è 0.

Non voglio chiedere agli utenti dell'applicazione di disinstallare l'app di Facebook se è stata installata. lasciatemi gentilmente la soluzione a questo problema.

Grazie,
Punit

+0

se si inserisce il permesso 'offline_access', la scadenza del token è 0 –

+0

Inizialmente avevo usato 'offline_access'. Ora l'ho tolto, sto ancora ottenendo expires_in come 0. La modifica dei permessi richiede un po 'di tempo per riflettere? – Gadenkan

+2

Ho funzionato. Ho dovuto accedere a Facebook e revocare l'autorizzazione 'offline_access' per farlo funzionare. Grazie mille @ adil-soomro – Gadenkan

risposta

14

Se si mette il permesso offline_access, la scadenza token è 0.

Per chiunque altro avendo questo problema (se si fosse messo offline_access permesso e poi rimosso) seguire la procedura:

  • Vai alle impostazioni del profilo Facebook e rimuovi la tua app.
  • e quindi effettuare nuovamente il login.
  • Autorizza di nuovo l'app.

In alternativa si può fare questo:

  • Vai al tuo profilo facebook impostazione> Applicazioni>Your_App e rimuovere "accedere ai miei dati in qualsiasi momento" permesso.
  • Salva le modifiche apportate.
  • Riaprire Your_App (vale a dire senza autorizzazione offline_access ora).
+0

Grazie, questo stavo cercando :) Ma quando ho usato Facebook sdk con i miei dati di accesso ogni volta che funzionava bene con Android 2.1 e versioni successive fino ad Android 4.0, questo problema ho visto solo dopo Android 4.0 e versioni successive – Zoombie

0

Avere lei ha citato Hash Digitare l'applicazione che si è creato su facebook? In caso contrario, creane uno valido e menzionalo. Questo di solito si verifica a causa delle nuove funzionalità di aggiornamento di Facebook, tuttavia, le versioni precedenti di Facebook funzionano bene ogni volta. Puoi verificarlo disinstallando gli aggiornamenti sulla tua app di Facebook ed esegui il tuo codice. Funziona ancora bene. Scopri di più da here

+0

Ho usato un Key Hash valido. E la disinstallazione degli aggiornamenti non aiuta. – Gadenkan

+0

Ottengo correttamente access_token. Ottengo solo expires_in come 0. Voglio sapere come ottenere il valore expires_in corretto. – Gadenkan