내용으로 건너뛰기

__CAPGO_KEEP_0__

소개

소개

이 안내서에서, Capgo Android용 Social Login을 사용하여 Google 로그인을 설정하는 방법을 배울 것입니다. 이 안내서를 읽기 전에 이미 일반 설정 가이드를 읽었다고 가정합니다. 일반 설정 가이드.

Android에서 Google 로그인 사용

Android에서 Google 로그인 설정

주의

  1. 여러 개의 SHA1 인증서가 있는 경우 여러 개의 Android 클라이언트 ID를 생성할 수 있습니다.

    1. __CAPGO_KEEP_0__을 클릭하세요.

      Google Console 검색 바
    2. __CAPGO_KEEP_1__을 입력하세요. credentials __CAPGO_KEEP_2__을 클릭하세요. APIs and Services __CAPGO_KEEP_0__ 결과를 보여주는 화면

      __CAPGO_KEEP_2__ 결과를 보여주는 화면
    3. __CAPGO_KEEP_0__을 클릭하세요. create credentials

      Google Console에서 __CAPGO_KEEP_2__ 버튼을 클릭하세요.
    4. __CAPGO_KEEP_3__을 선택하세요. OAuth client ID

      __CAPGO_KEEP_4__ 옵션을 선택하세요.
    5. __CAPGO_KEEP_5__을 선택하세요. Android __CAPGO_KEEP_6__ 타입을 선택하세요.

      애플리케이션 유형 선택에서 안드로이드 옵션을 강조합니다.
    6. 안드로이드 스튜디오를 열어주세요.

    7. 네비게이터의 가장 아래 부분에서 Gradle Scripts

      안드로이드 스튜디오 프로젝트 네비게이터의
    8. 찾아보세요. build.gradle 모듈 app

      Gradle Scripts 섹션에서
    9. build.gradle (Module: app) 파일을 찾으세요. android.defaultConfig.applicationId이것을 복사하세요. 이것은 Google 콘솔에서 package name Build.gradle 파일에서 applicationId 구성이 표시됩니다.

      터미널을 열어주세요. 현재 위치가 프로젝트 폴더에 있는지 확인하세요.
    10. 터미널에서 android 앱 폴더로 이동하여 실행하세요. ./gradlew signInReport

    gradlew signInReport 명령어를 실행하는 터미널 창
    1. 이 명령어의 맨 위로 스크롤을 내리세요. 다음을 확인하세요. 복사하세요. SHA1.
    SHA1 인증서 지문이 표시되는 터미널 출력
    1. Google Console로 돌아가서 applicationId SHA1 Package Name 인증서 필드에 create
    Android 클라이언트 생성 폼
  2. 웹 클라이언트를 생성하세요 (Android용은 필수입니다)

    1. Google Console의 Create credentials 페이지로 이동하세요

    2. 애플리케이션 유형을 Web

      애플리케이션 유형 선택 창에서 Web 옵션을 강조
    3. 클릭 Create

      Web 클라이언트 생성 폼에 Create 버튼이 아래쪽에 있습니다.
    4. __CAPGO_KEEP_0__에서 사용할 클라이언트 ID를 복사하세요. webClientId in your JS/TS code

      클라이언트 ID 상세 정보 창에서 Web 클라이언트 ID를 복사할 수 있습니다.
  3. 변경 MainActivity

    1. Android Studio에서 앱을 열어 주세요. Android Studio에서 앱을 실행할 수 있습니다. cap open android

    2. 찾아보기 MainActivity.java

      1. Android Studio 프로젝트 탐색기에서 폴더를 열어 주세요. app App 폴더

        App 폴더
      2. 찾아보기 java

        안드로이드 스튜디오 프로젝트 구조에서 Java 폴더를 찾으세요
      3. 당신의 MainActivity.java 그리고 클릭하세요

        패키지 구조에서 MainActivity.java 파일을 찾으세요
    3. 수정하세요 MainActivity.java다음과 같이 code을 추가하세요

      import ee.forgr.capacitor.social.login.GoogleProvider;
      import ee.forgr.capacitor.social.login.SocialLoginPlugin;
      import ee.forgr.capacitor.social.login.ModifiedMainActivityForSocialLoginPlugin;
      import com.getcapacitor.PluginHandle;
      import com.getcapacitor.Plugin;
      import android.content.Intent;
      import android.util.Log;
      import com.getcapacitor.BridgeActivity;
      // ModifiedMainActivityForSocialLoginPlugin is VERY VERY important !!!!!!
      public class MainActivity extends BridgeActivity implements ModifiedMainActivityForSocialLoginPlugin {
      @Override
      public void onActivityResult(int requestCode, int resultCode, Intent data) {
      super.onActivityResult(requestCode, resultCode, data);
      if (requestCode >= GoogleProvider.REQUEST_AUTHORIZE_GOOGLE_MIN && requestCode < GoogleProvider.REQUEST_AUTHORIZE_GOOGLE_MAX) {
      PluginHandle pluginHandle = getBridge().getPlugin("SocialLogin");
      if (pluginHandle == null) {
      Log.i("Google Activity Result", "SocialLogin login handle is null");
      return;
      }
      Plugin plugin = pluginHandle.getInstance();
      if (!(plugin instanceof SocialLoginPlugin)) {
      Log.i("Google Activity Result", "SocialLogin plugin instance is not SocialLoginPlugin");
      return;
      }
      ((SocialLoginPlugin) plugin).handleGoogleLoginIntent(requestCode, data);
      }
      }
      // This function will never be called, leave it empty
      @Override
      public void IHaveModifiedTheMainActivityForTheUseWithSocialLoginPlugin() {}
      }
    4. 파일을 저장하세요

  4. 애플리케이션에서 Google 로그인을 사용하세요

    1. 먼저 import를 하세요 SocialLogin

      import { SocialLogin } from '@capgo/capacitor-social-login';
    2. 초기화 호출. 이 함수는 단 한번만 호출되어야 합니다.

      // onMounted is Vue specific
      // webClientId is the client ID you got in the web client creation step not the android client ID.
      onMounted(() => {
      SocialLogin.initialize({
      google: {
      webClientId: '673324426943-avl4v9ubdas7a0u7igf7in03pdj1dkmg.apps.googleusercontent.com',
      }
      })
      })
    3. 호출 SocialLogin.login. 클릭 시 다음 code를 실행하는 버튼을 생성하세요.

      const res = await SocialLogin.login({
      provider: 'google',
      options: {}
      })
      // handle the response
      console.log(JSON.stringify(res))
  5. 테스트를 위해 에뮬레이터를 구성하세요

    1. Go into Device manager 및 플러스 버튼을 클릭하세요

      Android Studio의 Device Manager에서 플러스 버튼이 강조된 상태
    2. 가상 장치를 생성하세요

      Virtual Device Configuration의 Create Virtual Device 버튼
    3. icon이 있는 장치를 선택하세요 Play Store Play Store 지원 장치

      하드웨어 선택에서 Play Store 지원 장치가 표시됩니다

      테스트를 위해 에뮬레이터를 구성하세요 pixel 8 Capgo는 Play Store API 및 서비스를 지원합니다

    4. 클릭 next

      장치 생성 마법사에서 다음 버튼 클릭
    5. OS 이미지가 다음 중 하나여야 합니다. Google Play. IT MUST 다음 중 하나여야 합니다. Google Play

      구글 플레이 타입 이미지를 보여주는 시스템 이미지 선택 화면
    6. 다음 버튼 클릭

      시스템 이미지 선택 화면에서 다음 버튼 클릭
    7. 장치를 확인하세요. 에뮬레이터의 이름을 원하는 대로 지어보세요

      장치 구성 확인 화면에 Finish 버튼
    8. 시뮬레이터로 Device Manager 및 부팅하세요

      가상 장치 목록과 재생 버튼이 있는 장치 관리자
    9. 시뮬레이터가 부팅되면 설정으로 들어가세요

      안드로이드 에뮬레이터에 설정 앱이 표시됩니다
    10. 설정으로 들어가세요 Google Play

    구글 플레이 옵션을 가진 설정 화면
    1. 클릭하세요 Update 약 60초 정도 기다려 주세요
    구글 플레이 업데이트 화면에 Update 버튼이 있습니다
  6. 애플리케이션을 테스트하세요

    모든 것을 올바르게 수행했다면, 구글 로그인 흐름이 정상적으로 작동하는 것을 볼 수 있습니다:

    안드로이드에서 구글 로그인 흐름 데모: 로그인 프로세스와 인증 성공

문제 해결

문제 해결

문제가 있으면 아래를 확인해 주세요. Github 문제.

구글 로그인과 관련된 문제는 항상 SHA1 인증서와 관련이 있습니다.

개발용 SHA1 인증서를 받을 수 없다면, 사용자 정의 키 스토어를 사용해 보세요. 아래 프로젝트에 키 스토어를 추가하는 방법에 대한 설명입니다.

사용 중인 경우 Google Android 로그인 인증 및 계정 흐름을 계획하고 연결하려면 @capgo/capacitor-social-login을 사용하여 @capgo/capacitor-social-login의 원시 기능을 사용하여 @capgo/capacitor-social-login @capgo/capacitor-social-login의 구현 세부 정보를 참조하십시오. @capgo/capacitor-passkey @capgo/capacitor-passkey의 구현 세부 정보를 참조하십시오. @capgo/capacitor-native-biometric @capgo/capacitor-native-biometric의 구현 세부 정보를 참조하십시오. 그리고 두 단계 인증 두 단계 인증의 구현 세부 정보를 참조하십시오.