Korzystam z logowania gplus i otrzymuję ten błąd w momencie, gdy jestem w 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();
}
}
}
I wzywam do logowania gplus po kliknięciu przycisku. Po kliknięciu przycisku wykonywany jest następujący kod ....
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);
I ja geetng ten błąd ...
Status{statusCode=DEVELOPER_ERROR, resolution=null}
w tej linii ....
GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
Proszę zasugerować rozwiązanie.
android
google-plus
Gurvinder Singh
źródło
źródło
Odpowiedzi:
Musisz dodać swój klucz SHA1 do konfiguracji konsoli Firebase. Możesz to zrobić w ten sposób:
Konsola Firebase ( https://console.firebase.google.com ) -> Twój projekt -> konfiguracja -> przewiń do
Możesz znaleźć swój klucz SHA1, uruchamiając „Raport podpisywania” z Android Studio:
Następnie spójrz na kartę „Uruchom” i kliknij przycisk:
Myślę, że to łatwiejszy sposób. Mam nadzieję, że to pomoże.
źródło
Prawdopodobnie utworzyłeś plik konfiguracyjny przy użyciu SHA1 tokenu produkcyjnego , użyj rozszerzenia
androiddebugkey
aliasu do zebrania SHA1 odpowiadającego wersji debugowania twojej aplikacji i skopiuj plik konfiguracyjny do katalogu 'app', powinieneś mieć oba pliki konfiguracyjne (jeden dla celów debugowania i innych dla środowiska produkcyjnego).Na podstawie przewodnika opublikowanego w https://developers.google.com/identity/sign-in/android/start
źródło
Miałem ten sam problem i udało mi się go uruchomić, wykonując następujące kroki:
1. Dodaj odcisk cyfrowy DEBUG_KEYSTORE SHA1 do projektu Firebase. użyj następującego polecenia (MAC / LINUX)
2. teraz wygeneruj podpisany apk swojego projektu. Proces obejmuje generowanie magazynu kluczy dla wersji aplikacji.
3. Teraz wygeneruj odcisk cyfrowy RELEASE_KEYSTORE SHA1 za pomocą następującego polecenia
4. Skopiuj nowy SHA1 z danych wyjściowych i dodaj go jako kolejny odcisk cyfrowy SHA1 w konsoli aplikacji Firebase.
Teraz możesz już iść! ---- Nadzieja! to pomaga.
źródło
keytool
wymaga hasła : „android”Sposób, w jaki to naprawiłem, polegał na podniesieniu klucza odpowiadającego podświetlonemu tekstowi. Ze względu na mylące użycie słowa „serwer” na stronie dokumentacji Firebase wybrałem
Server key
. Co było przyczyną problemu.Klucz znajdziesz tutaj .
źródło
Miałem ten sam problem, jak go rozwiązałem, że miałem inny identyfikator applicationId w moim pliku gradle niż nazwa pakietu w pliku manifestu. I użyłem applicationId do utworzenia pliku json. Musiałem zmienić nazwę pakietu na taką, jaka była moja applicationId i to naprawiło problem.
źródło
Alternatywnie do odpowiedzi podanych tutaj, możesz użyć Asystenta Firebase w Android Studio, aby automatycznie dodać SHA-1 do swojego projektu za pomocą kliknięcia niektórych przycisków.
W Android Studio przejdź do
Tools > Firebase > Select 'Authentication'
i kliknij link, który mówi'Email and password authentication'
.Spowoduje to wyświetlenie małego samouczka na temat integracji uwierzytelniania z projektem, ale ponieważ prawdopodobnie już to wszystko zrobiłeś, po prostu kliknij
'Connect to Firebase'
i gotowe.źródło
To stare pytanie, ale ostatnio utknąłem z błędem 10 (DEVELOPER_ERROR), ponieważ korzystałem z identyfikatora klienta Androida, który utworzyłem w Google Developer Console.
Rozwiązaniem dla mnie było użycie poświadczeń Androida w konsoli programisty Google tylko do wskazania klucza SHA mojego apk i użycie identyfikatora klienta aplikacji internetowej (!) Z konsoli programisty Google w mojej aplikacji cordova.
config.xml:
kod:
Nie używam Firebase.
źródło
client id
rozwiązało problem DEVELOPER_ERROR. Chociaż dla mnie nie ma to sensu i nie jest oczywiste, że należy użyć innego identyfikatora klienta.Mogłeś wygenerować i dodać zły klucz SHA1. Wykonaj następujące kroki, aby wygenerować klucz SHA1 w Android Studio:
Teraz dodaj ten klucz SHA1 do projektu Firebase dla systemu Android.
źródło
Proszę umieścić poprawny plik json w katalogu głównym projektu Android.
Więcej informacji znajdziesz tutaj: https://coderzpassion.com/android-working-latest-google-plus-login-api/
źródło
Błąd jest spowodowany tym, że suma kontrolna SHA-1 klucza debugowania lub wydania nie jest uwzględniona w konsoli firebase / google.
Najpierw wygeneruj klucz za pomocą następującego polecenia:
Następnie skopiuj sumę kontrolną SHA-1 i przejdź do:
źródło
U mnie działało, kiedy go po raz pierwszy wdrożyłem, ale zatrzymało się po kilku dniach programowania, ze wspomnianym komunikatem o błędzie.
Rozwiązałem problem, wykonując następujące czynności:
i zadziałało
źródło
Natknąłem się na ten błąd w mojej aplikacji Firebase. Zostało to naprawione, kiedy dodałem
requestIdToken(activity.getString(R.string.default_web_client_id))
część poniżej.źródło
Wystąpił ten błąd, gdy zaktualizowałem plik konfiguracyjny json o nowe konto Google.
Ręczne odinstalowanie aplikacji i ponowna instalacja aplikacji zadziałały.
źródło
Aby każdy wydał aplikację, potrzebujesz specjalnego odcisku palca z pliku kluczy. Nic dziwnego, że otrzymuję ten błąd tylko w przypadku wydania. Jak uzyskać odcisk cyfrowy certyfikatu podpisywania (SHA1) dla OAuth 2.0 na Androida?
źródło
Upewnij się, że włączono Logowanie przez Google w obszarze Uwierzytelnianie w konsoli Firebase.
źródło
Rozwiązałem swój problem, używając odpowiedniego server_client_id w tej linii:
Użyłem złego kodu.
źródło
Niektóre usługi, takie jak logowanie do Google, wymagają dodania odcisku palca SHA1 do konsoli Firebase.
Brakowało mi dodania odcisku palca SHA w konsoli Firebase. Możesz to zrobić, przechodząc do Konsola FireBase> ustawienia projektu> Dodaj opcję odcisku palca.
Możesz wygenerować odcisk palca SHA1 w bardzo łatwy sposób https://www.youtube.com/watch?v=FczARQ244GE
Potem popełniłem jeszcze jeden błąd
Po wygenerowaniu klucza SHA1 z powyższej metody. Skopiowałem nieprawidłowy klucz SHA1, który wygasł. Więc upewnij się, że klucz SHA1, który kopiujesz z powyższego wyjścia, jest prawidłowy (sprawdź poprawną wartość do momentu, również klucza SHA1)
Upewnij się również, że nazwa pakietu (xyz), którą dodałeś w firebase, jest taka sama, jak używana w kodzie Androida.
Upewnij się również, że używasz prawidłowego AppID
źródło
Po długich poszukiwaniach znalazłem rozwiązanie. Właściwie ten błąd
Error: Status{statusCode=DEVELOPER_ERROR, resolution=null}
wskazuje na nieprawidłowy SHA-1 LUB niepoprawną nazwę pakietu LUB coś innego? W moim przypadku dodajędebug
słowo kluczowe na końcu nazwy mojego pakietucom.sample.app
=>com.sample.app.debug
źródło
Zmagałem się z tym problemem, ponieważ wykonałem kopię mojej aplikacji ze zmianą nazwy pakietu. Dodaję do niego nowy projekt w Firebase. Mój błąd polegał na tym, że zapomniałem zmienić identyfikator klienta serwera na ten w nowym projekcie Firebase.
Więcej szczegółów w sekcji dotyczącej uwierzytelniania w Firebase Sectoin tutaj
źródło