Используйте наш пример приложения для Android, чтобы увидеть, как работает вход в систему, или добавьте вход в существующее приложение .
Требуется: последние версии Android Studio и Google Play Services .
Получить проект
Если вы впервые используете образец сервисов Google, посетите репозиторий google-services.
$ git clone https://github.com/googlesamples/google-services.git
Откройте Android-студию.
Выберите «Файл» > «Открыть» , перейдите туда, где вы клонировали репозиторий google-services
, и откройте google-services/android/signin
.
Настройка проекта консоли Google API
- Откройте существующий проект в консоли API или создайте проект, если у вас его еще нет.
- На странице экрана согласия OAuth убедитесь, что вся информация полная и точная.
- На странице «Учетные данные» создайте идентификатор клиента типа Android . Имя пакета примера приложения —
com .google .samples .quickstart .signin
. Вам также необходимо будет предоставить хэш SHA-1 из отпечатка вашего сертификата подписи. Дополнительную информацию см. в разделе «Аутентификация вашего клиента» . - На странице «Учетные данные» создайте идентификатор клиента типа веб-приложения . Поля «Авторизованные источники JavaScript» и «Авторизованные URI перенаправления» можно оставить пустыми. Этот идентификатор веб-клиента требуется для примеров
IdTokenActivity
иServerAuthCodeActivity
. В реальном приложении этот идентификатор клиента будет представлять внутренний сервер вашего приложения. Скопируйте и вставьте идентификатор клиента в файл
strings.xml
вашего проекта:<string name="server_client_id">YOUR_SERVER_CLIENT_ID</string>
Запустите образец
Теперь вы готовы собрать образец и запустить его из Android Studio.
Создайте образец, нажмите кнопку «Выполнить» и выберите подключенное устройство или эмулятор с последней версией сервисов Google Play.
Как это работает
Приложение создает GoogleSignInClient
, указывая необходимые ему параметры входа. Затем при нажатии кнопки входа приложение запускает намерение входа, которое предлагает пользователю войти в систему с учетной записью Google.
// Configure sign-in to request the user's ID, email address, and basic // profile. ID and basic profile are included in DEFAULT_SIGN_IN. GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) .requestEmail() .build();
// Build a GoogleSignInClient with the options specified by gso. mGoogleSignInClient = GoogleSignIn.getClient(this, gso);
private void signIn() { Intent signInIntent = mGoogleSignInClient.getSignInIntent(); startActivityForResult(signInIntent, RC_SIGN_IN); }
Следующие шаги
Если вы хотите узнать, как реализовать вход в Google в своем приложении, ознакомьтесь с нашим руководством по реализации.
У вас был хороший опыт? Попали в беду? Дайте нам знать!