Seguo these instructions (https://developers.google.com/identity/sign-in/android/backend-auth) per ottenere un token ID per essere inviato al mio back-end, ma quando ho creato String scopes = "audience:server:client_id:" + Service.SERVER_CLIENT_ID;
(Sì, la SERVER_CLIENT_ID
non è il client Android ID) non riesco a ottenere un token e genera questo errore.autenticazione di Google con un server back-end richiesto Scopes
E/Login: com.google.android.gms.auth.GoogleAuthException: Unknown
Tuttavia quando uso il seguente campo di applicazione, invece String scopes = "oauth2:profile email";
ho successo get 'un' token, ma non è il tempo che mi aspettavo che fosse e ho paura potrebbe essere sbagliata .
Le mie domande sono ...
1) Perché non l'scopes = "audience:server:client_id:" + SERVER_CLIENT_ID;
utilizzate per la lavorazione guida?
2) Il token che ottengo dall'uso di String scopes = "oauth2:profile email";
è sicuro per la verifica di un utente su un back-end?
Il codice è di seguito.
@Override
protected String doInBackground(Void... params) {
String accountName = Plus.AccountApi.getAccountName(googleApiClient);
Account account = new Account(accountName, GoogleAuthUtil.GOOGLE_ACCOUNT_TYPE);
//String scopes = "oauth2:profile email";
String scopes = "audience:server:client_id:" + Service.SERVER_CLIENT_ID; // Not the app's client ID.
Log.d(TAG, "Account Name: " + accountName);
Log.d(TAG, "Scopes: " + scopes);
try {
userIdToken = GoogleAuthUtil.getToken(getApplicationContext(), account, scopes);
return userIdToken;
} catch (IOException e) {
Log.e(TAG, "IOError retrieving ID token.", e);
return null;
} catch (UserRecoverableAuthException e) {
startActivityForResult(e.getIntent(), RC_SIGN_IN);
return null;
} catch (GoogleAuthException e) {
Log.e(TAG, "GoogleAuthError retrieving ID token.", e);
return null;
}
}
prima off. Benvenuti in Stackoverflow. Secondo, datemi un secondo per vedere se questo mi indica la giusta direzione. (Sto votando questo nel frattempo) – SARose
Grazie! So che non è una risposta completa, ma non ho potuto lasciare un commento e ho pensato che alcune informazioni fossero migliori di altre. – kmosdev
potresti postare qualche codice di esempio per favore – SARose