Estou usando o login do gplus e recebo esse erro no momento em que estou em onActivityResult ....
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
callbackManager.onActivityResult(requestCode, resultCode, data);
client.onActivityResult(requestCode, resultCode, data);
if (requestCode == 0) {
GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
if (result.isSuccess()) {
GoogleSignInAccount acct = result.getSignInAccount();
// Log.d("Result","details"+ acct.getDisplayName() + acct.getEmail());
mEmail = acct.getEmail();
String mFullName = acct.getDisplayName();
String mGoogleplusId = acct.getId();
SocialUser user = new SocialUser();
user.setType("googleplus");
user.setEmail(mEmail);
user.setFullname(mFullName);
user.setId(mGoogleplusId + "");
loginParams.put("email_id", mEmail);
loginParams.put("googlePlusId", mGoogleplusId);
loginParams.put("full_name", mFullName);
loginParams.put("registrationType", "googleplus");
SignUpService(user);
} else {
Toast.makeText(CustomerLogIn.this, "Unable to fetch data, Proceed manually", Toast.LENGTH_SHORT).show();
}
}
}
E estou ligando para o login do gplus no clique do botão. Ao clicar no botão, o seguinte código é executado ....
GoogleSignInOptions googleSignInOptions = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestEmail()
.build();
mGoogleApiClient = new GoogleApiClient.Builder(CustomerLogIn.this)
.addApi(Auth.GOOGLE_SIGN_IN_API, googleSignInOptions)
.build();
Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient);
startActivityForResult(signInIntent, 0);
E estou recebendo esse erro ...
Status{statusCode=DEVELOPER_ERROR, resolution=null}
nesta linha ....
GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
Por favor, sugira a solução.
android
google-plus
Gurvinder Singh
fonte
fonte
Respostas:
Você precisa adicionar sua chave SHA1 à configuração do console do Firebase. Você pode fazer isso desta maneira:
Console do Firebase ( https://console.firebase.google.com ) -> seu projeto -> configuração -> role para
Você pode encontrar sua chave SHA1 executando "Relatório de assinatura" do Android Studio:
Então, olhe a "aba executar" e clique no botão:
Acho que é a maneira mais fácil. Espero essa ajuda.
fonte
Provavelmente você criou o arquivo de configuração usando o SHA1 do seu token de produção , use o
androiddebugkey
alias para reunir o SHA1 correspondente à versão de depuração do seu aplicativo e copie o arquivo de configuração para o diretório 'app', você deve ter os dois arquivos de configuração (um para para fins de depuração e outro para ambiente de produção).Com base no passo a passo publicado em https://developers.google.com/identity/sign-in/android/start
fonte
Eu tive o mesmo problema e resolvi seguir estas etapas:
1. Adicione a impressão digital DEBUG_KEYSTORE SHA1 ao projeto do Firebase. use o seguinte comando (MAC / LINUX)
2.Agora gere um apk assinado do seu projeto. O processo inclui a geração de um armazenamento de chaves para a versão de lançamento do seu aplicativo.
3. Agora gere a impressão digital RELEASE_KEYSTORE SHA1 usando o seguinte comando
4.Copie o novo SHA1 da saída e adicione-o como outra impressão digital SHA1 no console do aplicativo Firebase.
Agora você está pronto para ir! ---- Esperança! isso ajuda.
fonte
keytool
requer uma senha : "android"O jeito que eu consertei foi pegando a tecla correspondente ao texto destacado. Devido ao uso confuso da palavra 'servidor' na página de documentação do Firebase, eu estava pegando o
Server key
. Qual era a razão do problema.Você pode encontrar a chave aqui .
fonte
Eu estava tendo o mesmo problema, como eu resolvi é que tinha um applicationId diferente no meu arquivo Gradle do que o nome do pacote no meu arquivo de manifesto. E usei o applicationId para criar o arquivo json. Tive que alterar o nome do meu pacote para o que era meu applicationId e isso corrigiu para mim.
fonte
Como alternativa às respostas fornecidas aqui, você pode usar o Firebase Assistant do Android Studio para adicionar automaticamente o SHA-1 ao seu projeto com o clique de alguns botões.
No Android Studio, acesse
Tools > Firebase > Select 'Authentication'
e clique no link que diz'Email and password authentication'
.Isso trará a você um pequeno tutorial sobre como integrar a autenticação ao seu projeto, mas como provavelmente você já fez tudo isso, basta clicar
'Connect to Firebase'
e pronto.fonte
É uma pergunta antiga, mas estou preso com o erro 10 (DEVELOPER_ERROR) recentemente, porque eu estava usando o ID do cliente Android, que criei no console do desenvolvedor do Google.
A solução para mim foi usar as credenciais do Android no console do desenvolvedor do Google apenas para indicar a chave SHA do meu apk e usar as credenciais do ID de cliente do aplicativo da Web (!) Do console do desenvolvedor do Google no meu aplicativo Cordova.
config.xml:
código:
Eu não uso o Firebase.
fonte
client id
resolveu o problema DEVELOPER_ERROR. Embora para mim não faça sentido e não seja óbvio que deva ser usado um ID de cliente diferente.Você pode ter gerado e adicionado a chave SHA1 errada. Use as seguintes etapas para gerar a chave SHA1 no Android Studio:
Agora adicione esta chave SHA1 em seu projeto Firebase android.
fonte
Coloque o arquivo json correto na raiz do projeto android
Para obter mais informações, consulte aqui: https://coderzpassion.com/android-working-latest-google-plus-login-api/
fonte
Para mim, estava funcionando quando o implementei pela primeira vez, mas parei após alguns dias de desenvolvimento, com a mensagem de erro mencionada.
Resolvi o problema com estas etapas:
e funcionou
fonte
Encontrei este erro em meu aplicativo Firebase. Foi corrigido quando adicionei a
requestIdToken(activity.getString(R.string.default_web_client_id))
parte abaixo.fonte
Recebi este erro quando atualizei meu arquivo de configuração json com uma nova conta do Google.
Desinstalar o aplicativo manualmente e reinstalar o aplicativo funcionou para mim.
fonte
O erro é causado porque a soma de verificação SHA-1 da chave de depuração ou liberação não está incluída no console do firebase / google.
Primeiro gere a chave usando o seguinte comando:
Em seguida, copie a soma de verificação SHA-1 e vá para:
fonte
Para qualquer pessoa que esteja lançando um aplicativo, você precisa de uma impressão digital especial de seu arquivo de armazenamento de chaves. Não admira por que eu estava recebendo esse erro apenas para a versão de lançamento. Como obter a impressão digital do certificado de assinatura (SHA1) para OAuth 2.0 no Android?
fonte
Certifique-se de habilitar o Login do Google em Autenticação no console do Firebase.
fonte
Resolvi meu problema usando server_client_id certo nesta linha:
Usei o código errado.
fonte
Alguns serviços, como o login do Google, exigem que a impressão digital SHA1 seja adicionada ao console do Firebase.
Perdi a adição da impressão digital SHA no console do firebase. Você pode fazer isso indo em Console FireBase> configuração do projeto> opção Adicionar impressão digital.
Você pode gerar a impressão digital SHA1 de uma maneira muito fácil https://www.youtube.com/watch?v=FczARQ244GE
Depois disso eu estava cometendo mais um erro
Após a geração da chave SHA1 do método acima. Copiei a chave SHA1 inválida errada, que estava expirada. Portanto, certifique-se de que a chave SHA1 que você está copiando da forma de saída acima seja válida (verifique o valor válido até a chave SHA1)
Além disso, certifique-se de que o nome do pacote (xyz) que você adicionou no firebase é o mesmo usado no seu código Android.
Certifique-se também de usar o AppID correto
fonte
Após uma longa investigação, encontrei uma solução. Na verdade este erro
Error: Status{statusCode=DEVELOPER_ERROR, resolution=null}
aponta para SHA-1 incorreta ou nome do pacote incorreto ou algo mais ?. No meu caso, adiciono adebug
palavra-chave ao final do nome do meu pacotecom.sample.app
=>com.sample.app.debug
fonte
Lutei com esse problema porque fiz uma cópia do meu aplicativo com a alteração do nome do pacote. Adiciono um novo projeto para ele no Firebase. Meu erro foi que esqueci de alterar o ID do cliente do servidor para o do novo projeto Firebase.
mais detalhes sob autenticação com Firebase sectoin aqui
fonte