Android
Интеграция с подписью Google на Android
Поиск…
Вступление
Этот раздел основан на том, как интегрировать учетную запись google, On android apps
Интеграция google Auth в ваш проект. (Получить файл конфигурации)
Сначала получите конфигурационный файл для входа с
Открыть ссылку ниже
[ https://developers.google.com/identity/sign-in/android/start-integrating][1]
нажмите, чтобы получить файл конфигурации
- Введите имя приложения и имя пакета и нажмите «Выбрать» и настроить службы
- предоставить SHA1 Включить Google SIGNIN и сгенерировать файлы конфигурации
Загрузите файл конфигурации и поместите файл в приложение / папку вашего проекта
- Добавьте зависимость к вашему проекту build.gradle:
classpath 'com.google.gms: google-services: 3.0.0'
- Добавьте плагин на уровень сборки: (внизу)
применить плагин: 'com.google.gms.google-services'
- добавьте эту зависимость в файл приложения gradle
dependties {compile 'com.google.android.gms: play-services-auth: 9.8.0'}
Внедрение кода Google SignIn
- В методе onCreate вашей учетной записи настройте Google Sign-In, чтобы запросить пользовательские данные, необходимые вашему приложению.
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestEmail()
.build();
- создать объект GoogleApiClient с доступом к API входа в Google и указанными вами параметрами.
mGoogleApiClient = new GoogleApiClient.Builder(this)
.enableAutoManage(this /* FragmentActivity */, this /* OnConnectionFailedListener */)
.addApi(Auth.GOOGLE_SIGN_IN_API, gso)
.build();
Теперь, когда пользователь нажимает кнопку входа в систему Google, вызывайте эту функцию.
private void signIn() { Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient); startActivityForResult(signInIntent, RC_SIGN_IN); }
реализуйте OnActivityResult, чтобы получить ответ.
@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);
}
}
Последний шаг Обработать Результат и получить данные пользователя
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); } }