Kroki pozwalające zminimalizować wpływ zmian zakresu na użytkowników
- Jeśli Twoja aplikacja wymaga adresu e-mail uwierzytelnionego użytkownika, a do tej pory używałeś do tego celu funkcji profile.emails.read, użyj zamiast niej funkcjiemail.
- Uzyskaj zatwierdzenie domeny profile.emails.readza pomocą zatwierdzonej prośby o weryfikację. Zapoznaj się z artykułem Jak przesłać prośbę o weryfikację?.
- Unieważnij token poprzedniego użytkownika w zakresie, który ma zostać usunięty, lub całkowicie usuń dostęp do aplikacji. Na przykład należy cofnąć token z dostępem profile.emails.read. Zalecamy, aby cofnąć zgodę, gdy użytkownicy są w aplikacji, dzięki czemu możesz od razu uzyskać ich zgodę.
- Poproś użytkowników o ponowne wyrażenie zgody na wykorzystanie danych w nowym zakresie, np. email, bezprofile.emails.read.
- Usuń zakres, który ma zostać wycofany, z konfiguracji ekranu akceptacji OAuth interfejsów API Google.
Aby przenieść aplikację z logowania przez Google+ na logowanie przez Google, musisz zaktualizować przycisk logowania, wymagane zakresy uprawnień i instrukcje pobierania informacji o profilu z Google. Pełne instrukcje znajdziesz w dokumentacji logowania przez Google na Androida.
Gdy aktualizujesz przycisk logowania, nie odnosij się do Google+ ani nie używaj koloru czerwonego. Zadbaj o zgodność ze zaktualizowanymi wskazówkami dotyczącymi promowania marki.
Większość aplikacji korzystających z logowania w Google+ prosiła o jakiś zestaw zakresów:
plus.login, plus.me i plus.profile.emails.read. Jeśli użyjesz opcji GoogleSignInOptions.Builder z opcją DEFAULT_SIGN_IN, automatycznie poprosisz o zakres profile, który obejmuje imię i nazwisko oraz zdjęcie profilowe użytkownika. Jeśli potrzebujesz też adresu e-mail użytkownika, wywołaj .requestEmail() podczas tworzenia opcji logowania Google.
Wielu implementatorów funkcji Logowanie przez Google+ używało procesu kodu. Oznacza to, że aplikacje na Androida, iOS lub JavaScript uzyskują od Google kod autoryzacji OAuth, a klient wysyła ten kod z powrotem na serwer wraz z ochroną przed fałszowaniem żądań w wielu witrynach. Następnie serwer weryfikuje kod i pobiera tokeny odświeżania i dostępu, aby pobrać informacje o profilu użytkownika z interfejsu API people.get.
Google zaleca teraz żądanie tokena identyfikatora i wysłanie go z klienta na Twój serwer. Tokeny identyfikacyjne mają wbudowane zabezpieczenia przed fałszowaniem w wielu witrynach. Można je też weryfikować statycznie na serwerze, co pozwala uniknąć dodatkowego wywołania interfejsu API w celu uzyskania informacji o profilu użytkownika z serwerów Google. Postępuj zgodnie z instrukcjami, aby zweryfikować tokeny identyfikacyjne na serwerze.
Jeśli nadal wolisz używać przepływu kodu do uzyskiwania informacji o profilu, możesz to zrobić. Gdy Twój serwer otrzyma token dostępu, musisz uzyskać informacje o profilu użytkownika z punktów końcowych userinfo określonych w naszym dokumencie dotyczącym logowania Discovery. Odpowiedź interfejsu API jest sformatowana inaczej niż odpowiedź z profilu Google+, dlatego musisz zaktualizować parsowanie pod kątem nowego formatu.
Jeśli używasz interfejsów GoogleAuthUtil.getToken lub Plus.API, przenieś je na najnowszy interfejs Sign-In API, aby zwiększyć bezpieczeństwo i zapewnić lepszy interfejs użytkownika.