Google Oauth

Авторизация Google OAuth через Google Play Services 9.2 (и выше)

В этой статье мы рассмотрим авторизацию в Android через Google OAuth, используя Google Play Services 9.2 (и выше).

Подготовка

В первую очередь, само собой, создайте новый проект.

После этого нужно добавить в наше приложение Google Play Services. Для начала нужно добавить проект в Google Developer по этой ссылке.

  1. Кликаем на кнопку «Get Started»:

Google Play Services — добавление приложения

 

2. Выбираем платформу (конечно же, Android):

Google Play Services — добавление приложения

 

3. Вводим данные приложения и нажимаем на кнопку:Google Play Services — добавление приложения

4. На следующем этапе нужно будет выбрать сервисы, которые мы будем использовать (нас интересует только Google Sign-In), и добавить SHA-1 хэш нашего сертификата. Поскольку проект тестовый, вполне подойдет debug-ключ. На OS X/Linux получить хэш можно следующей командой:

Вывод команды будет следующим:

Нужно скопировать значение SHA1, и вставить его в соответствующее поле и нажать на кнопку:

Google Play Services SHA-1

5. Нажимаем на «Generate configuration files»:

Google Play Services generate configuration

6. И последний шаг — «Download google-services.json«:

Google Play Services google-services.json

Добавляем Google Play Services в приложение

В корневой build.gradle в секцию dependencies добавляем:

В итоге файл будет выглядеть примерно так:

В build.gradle приложения в dependencies добавляем:

И в самый конец этого же файла build.gradle добавляем:

После этого копируем скачанный ранее google-services.json в папку с модулем (не в папку проекта, а именно модуля!). После этого синхронизируем Gradle.

Авторизация через Google Sign-In

В layout-файл добавляем кнопку для авторизации:

«Находим» нашу кнопку:

Activity должна реализовывать GoogleApiClient.OnConnectionFailedListener. Так же нужно создать GoogleApiClient, свяжем его с авторизацией и кнопкой логина:

Для начала авторизации будет нужен такой код:

Вызываем этот метод из обработчика клика кнопки логина:

Когда этот код запустится, появится окно с авторизацией (точнее, Activity из Google Play Services), и результат будет возвращен в onActivityResult. В нем-то мы и обрабатываем ответ:

Вот и все! Мы только что написали минимальный код для авторизации через Google Play Services 9.2. Теперь можно запустить приложение, нажать на кнопку авторизации, выбрать аккаунт во всплывающем окне и увидеть Toast с данными этого аккаунта.

GET YOUR EMAIL UPDATES

We send out our lovely email newsletter with useful tips and techniques, recent articles and upcoming events. Thousands of readers have signed up already. Get a free WordPress eBook now.
E-Mail