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

  1. Dodaj zależność do kompilacji na poziomie projektu. Gradle:

classpath „com.google.gms: google-services: 3.0.0”

  1. Dodaj wtyczkę do kompilacji na poziomie aplikacji. Gradle: (na dole)

zastosuj wtyczkę: „com.google.gms.google-services”

  1. 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