2012-07-01 4 views
5

Sto tentando di integrare l'API di dati di Google nella mia applicazione. Sto utilizzando l'involucro objC disponibile qui:L'API di Google non si autentica quando viene utilizzato l'ID client iOS

http://code.google.com/p/gdata-objectivec-client

ma ho avuto alcuni problemi con l'autenticazione. Fondamentalmente sto seguendo la procedura come descritto qui:

http://code.google.com/p/gtm-oauth2/wiki/Introduction#Signing_In_to_Google_Services

Ho creato un progetto sulla console API e ha aggiunto due ID client per le applicazioni installate: una è della piattaforma "Altro", l'altro è "iOS" con l'ID del gruppo impostato correttamente (anche se per il momento ho lasciato l'ID app 0). Ora arriva la parte interessante.

Sia l'app YouTubeSample in bundle con la libreria wrapper sopra E la mia app iOS funzionano perfettamente con l'ID client appartenente alla piattaforma "Altro", ed entrambi restituiscono un errore 400 invalid_client quando cambio l'ID per quello iOS . Ho ricontrollato gli ID e i segreti del cliente, tutti sono corretti. L'app per iOS ha ovviamente ricevuto l'ID bundle corretto.

Quindi, mi manca qualcosa di banale qui?

+0

sto soffrendo lo stesso problema qui .. = ( – tGilani

+0

Stesso problema qui –

+0

stesso anche qui – pdenya

risposta

1

C'è un motivo per cui è necessario utilizzare la coppia id/secret di tipo iOS invece della coppia di altri tipi? Forse mi manca qualcosa, ma la documentazione collegata afferma di non utilizzare un id client di tipo iOS:

Nella console, creare un progetto, quindi fare clic su "Accesso API" nella colonna di sinistra. Crea un nuovo ID client per un tipo di applicazione installata (non un'applicazione web) di altro tipo (non iOS). Ciò fornirà l'ID client e le stringhe segrete da utilizzare con il controller.

Il controller probabilmente non si identifica come un'applicazione iOS quando invia le richieste, che Google probabilmente verifica quando riceve una coppia ID/segreto iOS. ..

+0

Buon punto, ho completamente trascurato quello. Mi chiedo però perché hanno un'opzione "iOS" se non si deve usare quello per iOS ...: P – Lvsti