Kroki minimalizacji wpływu zmian zakresów na użytkowników
- Jeśli Twoja aplikacja wymaga adresu e-mail uwierzytelnionego użytkownika, a usługa
profile.emails.read
była już wcześniej używana do tego celu, użyjemail
. - Uzyskaj zatwierdzenie domeny
profile.emails.read
po zatwierdzeniu prośby o weryfikację. Więcej informacji znajdziesz w artykule Jak przesłać prośbę o weryfikację. - Unieważnij poprzedni token użytkownika do zakresu, który ma zostać usunięty, albo całkowicie odbierz dostęp do aplikacji. Na przykład token z dostępem
profile.emails.read
powinien zostać unieważniony. Zalecamy stosowanie odwołania, gdy użytkownicy korzystają z aplikacji. Dzięki temu od razu uzyskasz zgodę użytkowników. - Zachęć użytkowników do ponownego wyrażenia zgody na nowy zakres, np.
email
, bez parametruprofile.emails.read
. - Usuń zakres, który chcesz wycofać z konfiguracji ekranu zgody OAuth interfejsów API Google.
Aby przenieść aplikację z Logowania przez Google+ na Logowanie przez Google, musisz zaktualizować przycisk logowania, wymagane zakresy oraz instrukcje pobierania informacji profilowych z Google. Pełne instrukcje znajdziesz w dokumentacji Logowania przez Google na Androida.
Gdy aktualizujesz przycisk logowania, nie odwołuj się do Google+ ani nie używaj koloru czerwonego. Muszą być zgodne ze zaktualizowanymi wytycznymi dotyczącymi marki.
Większość aplikacji Logujących przez Google+ żądała niektórych kombinacji zakresów: plus.login
, plus.me
i plus.profile.emails.read
. Użycie funkcji GoogleSignInOptions.Builder
z opcją DEFAULT_SIGN_IN
powoduje automatyczne wysłanie prośby o zakres profile
zawierający nazwę użytkownika i zdjęcie profilowe. Jeśli chcesz podać też adres e-mail użytkownika, podczas tworzenia opcji logowania przez Google wywołaj .requestEmail()
.
Wiele osób implementujących Logowanie przez Google+ korzystało z przepływu kodu. Oznacza to, że aplikacje na Androida, iOS lub JavaScript otrzymują kod autoryzacji OAuth od Google, a klient wysyła go z powrotem do serwera wraz z ochroną przed oszustwem w różnych witrynach. Serwer weryfikuje kod oraz pobiera tokeny odświeżania i dostępu, aby pobierać informacje o profilu użytkownika z interfejsu API people.get
.
Google zaleca teraz żądanie tokena identyfikatora i wysłanie go z klienta na serwer. Tokeny tożsamości mają wbudowane zabezpieczenia przed oszustwem w różnych witrynach i mogą być statycznie weryfikowane na Twoim serwerze, co pozwala uniknąć dodatkowego wywołania interfejsu API w celu pobrania z serwerów Google informacji o profilu użytkownika. Postępuj zgodnie z instrukcjami weryfikowania tokenów tożsamości na serwerze.
Jeśli nadal wolisz uzyskiwać informacje o profilu, korzystając z przepływu kodu. Gdy Twój serwer uzyska token dostępu, musisz uzyskać informacje o profilu użytkownika z punktów końcowych userinfo
określonych w dokumencie dotyczącym logowania dotyczącym logowania. Odpowiedź interfejsu API jest sformatowana inaczej niż odpowiedź z profilu Google+, dlatego musisz zaktualizować analizę do nowego formatu.
Jeśli używasz GoogleAuthUtil.getToken
lub Plus.API
, musisz migrate na najnowszą wersję interfejsu Sign-In API, która zapewnia większe bezpieczeństwo i większą wygodę użytkowników.