Android
Integracja logowania Google na Androidzie
Szukaj…
Wprowadzenie
Ten temat jest oparty na tym, jak zintegrować logowanie Google, w aplikacjach na Androida
Integracja Google Auth z Twoim projektem. (Uzyskaj plik konfiguracyjny)
Najpierw pobierz plik konfiguracyjny do logowania z
Otwórz link poniżej
[ https://developers.google.com/identity/sign-in/android/start-integrating][1]
kliknij Pobierz plik konfiguracyjny
- Wpisz nazwę aplikacji i nazwę pakietu i kliknij wybierz i skonfiguruj usługi
- dostarcz SHA1 Włącz google SIGNIN i generuj pliki konfiguracyjne
Pobierz plik konfiguracyjny i umieść go w aplikacji / folderze swojego projektu
- Dodaj zależność do kompilacji na poziomie projektu. Gradle:
classpath „com.google.gms: google-services: 3.0.0”
- Dodaj wtyczkę do kompilacji na poziomie aplikacji. Gradle: (na dole)
zastosuj wtyczkę: „com.google.gms.google-services”
- dodaj tę zależność do pliku oceny aplikacji
zależności {compile 'com.google.android.gms: play-services-auth: 9.8.0'}
Implementacja kodu Logowanie przez Google
- W metodzie onCreate działania logowania skonfiguruj Google Sign-In, aby żądał danych użytkownika wymaganych przez Twoją aplikację.
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestEmail()
.build();
- utwórz obiekt GoogleApiClient z dostępem do interfejsu API logowania Google i podanych opcji.
mGoogleApiClient = new GoogleApiClient.Builder(this)
.enableAutoManage(this /* FragmentActivity */, this /* OnConnectionFailedListener */)
.addApi(Auth.GOOGLE_SIGN_IN_API, gso)
.build();
Teraz, gdy użytkownik kliknie przycisk logowania Google, wywołaj tę funkcję.
private void signIn() { Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient); startActivityForResult(signInIntent, RC_SIGN_IN); }
zaimplementuj OnActivityResult, aby uzyskać odpowiedź.
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// Result returned from launching the Intent from GoogleSignInApi.getSignInIntent(...);
if (requestCode == RC_SIGN_IN) {
GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
handleSignInResult(result);
}
}
Ostatni krok Podejmij wynik i uzyskaj dane użytkownika
private void handleSignInResult(GoogleSignInResult result) { Log.d(TAG, "handleSignInResult:" + result.isSuccess()); if (result.isSuccess()) { // Signed in successfully, show authenticated UI. GoogleSignInAccount acct = result.getSignInAccount(); mStatusTextView.setText(getString(R.string.signed_in_fmt, acct.getDisplayName())); updateUI(true); } else { // Signed out, show unauthenticated UI. updateUI(false); } }
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow