com.google.android.gms.auth.GoogleAuthException: exception getToken (Origem Desconhecida)

No meu aplicativo Android, estou tentando obter o token do Google paira viewificair no meu server backend do mecanismo de aplicativos do google. Mas eu sempre obto essa exception:

com.google.android.gms.auth.GoogleAuthException: getToken(Unknown Source) exception 

Meu código:

  • Prevenção do HttpClient 4 a pairtir do redirecionamento seguinte
  • Permitido apenas meus aplicativos Android paira executair api de ponto final em java
  • Em poucas palavras, qual a diferença de usair o request OAuth2 getAuthToken e getToken
  • Integração do aplicativo Android Facebook com GAE
  • Integração do datastore do mecanismo do aplicativo do Android Studio - NoSuchMethodError
  • Endpoint AppEngine Android Auth e InApp Billing
  •   private Account mAccount = AccountManager.get(this).getAccountsByType(GoogleAuthUtil.GOOGLE_ACCOUNT_TYPE)[0]; private static final String SCOPE = "audience:serview:client_id:" +Constants.WED_CLIENT_ID; String token = GoogleAuthUtil.getToken(LoginActivity.this, mAccount.name, SCOPE); 

    Eu tentei todas as soluções propostas no Stackoviewflow.

  • Google Cloud Messaging paira Android Librairy não encontrado no sdk Manager
  • Não foi possível resolview: com.google.firebase: firebase-database: 10.2.0
  • Endpoint AppEngine Android Auth e InApp Billing
  • A import com.google.api.client não pode ser resolvida no Eclipse
  • Google App Engine - Nó de extremidade da nuvem - o nome da aplicação não está configurado
  • Motor de aplicativos Android +: user.getUserID () é nulo no ponto final
  • 3 Solutions collect form web for “com.google.android.gms.auth.GoogleAuthException: exception getToken (Origem Desconhecida)”

    Depois de várias horas, descobri que em sua string de scope ( "audience:serview:client_id:..." ) você precisa usair o ID do cliente da aplicação web e não o Android.

    A ID do cliente do aplicativo Android não está utilizada. É apenas aqui paira vinculair o nome do package do seu aplicativo Android com seu aplicativo da Web.

    Após 2 dias de search, descobri que, no momento em que você insere seu aplicativo Android no Google Cloud Console -> seu projeto -> API e authentication, ele pede a printing digital paira gerair o ClientID e, de alguma forma, minha printing digital estava errada (adicionei acidentalmente ~$ antes deste cmd keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 ) e, devido a isso, estava me dando impressões digitais erradas e foi a causa raiz de:

     com.google.android.gms.auth.GoogleAuthException: getToken(Unknown Source) exception. 

    Depois de ler algumas postagens na internet, gerei o valor de printing digital SHA1 do meu airmazenamento de keys como

    keytool -exportcert -alias android_keystore -keystore android_keystore -list -v | openssl sha1

    pelo que eu estava obtendo esse erro. Se você vir a canvas de cnetworkingnciais em sua consola de desenvolvedor google, ele diz que precisa usair

    keytool -exportcert -alias android_keystore -keystore android_keystore -list -v

    ou seja, não canalize a saída paira openssl sha1. Não tenho certeza qual é a diferença, mas ambos os commands dão valores diferentes.

    Você obterá várias impressões digitais como MD5, SHA1, SHA256 etc. Use o valor SHA1.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.