5

Devo implementare l'accesso con Facebook e Google Plus nella mia applicazione Android. Implementato con successo Facebook come l'immagine qui sotto. enter image description hereCome mostrare la finestra mobile per il segno con Google Plus in Android

Ma quando a implementare accedi con Google plus si vede come Google plus image link

per favore qualcuno mi aiuta a implementare la stessa come il Facebook Login per il segno con Google plus in Android. In modo che l'utente possa inserire qualsiasi account Gmail preferisce accedere a Google.

+0

g + mostra così solo perché non si dispone di una configurazione di profilo più con tale account, altrimenti mostrerebbe direttamente la schermata di autorizzazione, utilizza comunque una finestra di dialogo (o una finestra di dialogo?). FB utilizza l'approccio webview quando l'app mobile non è installata sul dispositivo. – Ayoub

risposta

1

Sto usando la libreria SocialAuth, che supporta molti social network, tra cui Facebook e Google+.

Nota: È possibile fornire esempi di codice su come accedere nei social network corrispondenti utilizzando questa libreria (Facebook, Google+) in seguito, se necessario.

Aggiornamento:

1) client di id sono memorizzati in file di oauth_consumer.properties (metterlo nella cartella assets)

#facebook 
graph.facebook.com.consumer_key = YOUR_KEY 
graph.facebook.com.consumer_secret = YOUR_SECRET 

#Google Plus 
googleapis.com.consumer_key=YOUR_KEY.apps.googleusercontent.com 
googleapis.com.consumer_secret=YOUR_SECRET 

2) Google+ richiede URL di reindirizzamento. Specifica URL di reindirizzamento in google console del progetto e aggiungilo in SocialAdapter durante l'inizializzazione.

... 
socialAuthAdapter = new SocialAuthAdapter(new ResponseListener(), null); 
setAuthProviders(); 
... 

private void setAuthProviders() { 
    socialAuthAdapter.addProvider(SocialAuthAdapter.Provider.FACEBOOK, R.drawable.facbook); 
    socialAuthAdapter.addProvider(SocialAuthAdapter.Provider.GOOGLEPLUS, R.drawable.google); 
    socialAuthAdapter.addCallBack(SocialAuthAdapter.Provider.GOOGLEPLUS, GOOGLE_PLUS_CALLBACK_URL); 
    //urn:ietf:wg:oauth:2.0:oob - if you set this url, than accessToken received from social network should be handled manually (web page (in WebView) with login response from Google+ will contain in header or in response link accessToken, and you will get it manually by parsing that links). not the best way. 
    socialAuthAdapter.enable(social); 
} 

3) Si otterrà access token in ResponseListener quando il flusso di login sarà finito:

private class ResponseListener implements DialogListener { 
    @Override 
    public void onComplete(Bundle bundle) { 
     final String providerName = bundle.getString(SocialAuthAdapter.PROVIDER); 
     SocialNetwork network = SocialNetwork.valueOf(providerName); 

     String accessToken = socialAuthAdapter.getCurrentProvider().getAccessGrant().getKey(); 
    } 

    @Override 
    public void onError(final SocialAuthError socialAuthError) { 
    } 

    @Override 
    public void onCancel() { 
    } 

    @Override 
    public void onBack() { 
    } 
} 

Si può leggere di più su di reindirizzamento URL here, in "Formare l'URL per una richiesta di autenticazione" sezione.

+0

Hey amico, Tu link mi supporta molto, ma puoi dirmi come cambiare l'id del client e reindirizzare uri nel file della libreria. – Srinivasan

+0

Esempi di codice aggiunti, selezionare "Aggiorna" per favore –

Problemi correlati