2012-07-02 1 views
28

Ho provato a creare un ID client di test per un'app Android che utilizza OAUTH 2.0 come accesso per il recupero del profilo utente. Ho seguito i passaggi per completare la creazione dell'ID client su google console, ma non vedo da nessuna parte il segreto del client. Sto cercando di aiutare il mio datore di lavoro a ottenere le credenziali di google per la sua app. So come implementare OAUTH 2.0 in Android, ma ho bisogno del client secret per scambiare il codice con il token di accesso.Console API Google - mancante segreto client

Innanzitutto, ho selezionato "API di Google+" dalla scheda Servizi. Quindi seguire i passaggi sullo schermo dalla scheda Accesso API. enter image description here

+0

Ho creato un nuovo account di servizio, scaricato un nuovo JSON, dopo che tutto ha funzionato. – MingalevME

risposta

22

Sembra che Google abbia finalmente abbandonato lo unnecessary client_secret for installable applications e non sia ancora aggiornato con la loro documentazione. È necessario verificare se si dispone già di un access_token nella richiesta OAuth iniziale like it's handled on Facebook.

Un'altra possibilità potrebbe essere quella di ricorrere all'utilizzo di Simple API Access key.

Aggiornamento:

Primo metodo sembra non funzionare con Google.

Il modo consigliato per Android è utilizzare AccountManager invece di cuocere le proprie richieste. Segui this example per vedere come viene implementato e come ottieni un AuthToken utilizzando una chiave di accesso API semplice. Invece di utilizzare l'API Tasks, è possibile includere la libreria OAuth2 API per recuperare userinfo.

+0

Non funziona solo con access_code. Stringa authorizationUrl = new GoogleAuthorizationCodeRequestUrl ( \t \t \t \t OAuth2ClientCredentials.CLIENT_ID, \t \t \t \t OAuth2ClientCredentials.OAUTH_CALLBACK_URL, v) .build(); –

+0

e mWebView.loadUrl (authorizationUrl); –

+0

sopra fornirà il codice di accesso, ma ho bisogno di un token di accesso e ho bisogno del client secret per scambiare il codice per il token di accesso. C'è qualche altra soluzione oltre all'utilizzo di una chiave di accesso API semplice? Ho bisogno di ottenere il profilo utente –

9

Fare clic su "Download JSON" È quello che stai cercando? enter image description here

+1

Ciao, ho trovato i segreti dentro il mio JSON! – Jack

+13

l'ho scaricato. ma, non ho trovato l'ID segreto. come posso ottenere – harikrishnan

+0

@Jack anche io non l'ho trovato. – curiousMind

-2

Un'altra soluzione è che si deve creare un ID cliente con il tipo di "applicazione installata", allora si avrà il client segreto

2

Proprio oggi ho scoperto che sulla nuova console cloud possiamo vedere il segreto del client per le app Android - mentre nella vecchia console di google non possiamo.

Per utilizzare la nuova console Cloud, fare clic sul messaggio "Stiamo migliorando l'esperienza. Prova la nuova console cloud." Google chiederà una conferma via SMS. Ora sarete reindirizzati alla the new cloud console

click this message to use the new cloud console

Ora, basta selezionare il progetto, cliccare su "Applicazioni registrato" nel menu a sinistra, selezionate la vostra applicazione Android, e voilà, il client OAuth 2.0 Id si' Vedrò il tuo cliente segreto. Non ho idea del perché sulla vecchia console di Google non sia visualizzato, ma se hai davvero bisogno di una chiave segreta del client, è lì.

here we can see the client secret for android apps

+0

Non esiste l'opzione "Applicazioni registrate" al mio fianco. Cosa devo fare per vederlo? – marienke

0

source ha detto che: Visita Google Developers Console per ottenere le credenziali di OAuth 2.0 come ad esempio un segreto ID client e client che sono noti a Google e l'applicazione. L'insieme di valori varia in base al tipo di applicazione che si sta creando. Ad esempio, un'applicazione JavaScript non richiedeun segreto, ma un'applicazione di server Web.

3

Poiché quasi tutto dalla risposta accettata è stato deprecato, ho pensato di condividere ciò che ho trovato.

Avevo bisogno dell'API People che richiede un segreto client. Ciò che Google consiglia di utilizzare persone API con Android è,

Selezionare il tipo di applicazione Altro, immettere il nome "La gente API Quickstart", e fare clic sul pulsante Crea.

Trovato qui: https://developers.google.com/people/quickstart/java (Fase 1 parte e)

Quindi, se avete bisogno di un segreto cliente, si potrebbe considerare l'utilizzo del tipo Altro. Ovviamente, segui prima la documentazione per la tua specifica API.

+0

Bel amico !! Ci proverò. Grazie – curiousMind

+0

Funziona per Android? – curiousMind