수색…


소개

이 주제는 Google 로그인을 통합하는 방법, Android 앱에서하는 방법을 기반으로합니다.

프로젝트에 Google 인증 정보 통합. (구성 파일 가져 오기)

먼저 로그인을위한 구성 파일 가져 오기

아래 링크 열기

[ https://developers.google.com/identity/sign-in/android/start-integrating][1]

get a configuration file을 클릭하십시오.

  • 앱 이름 및 패키지 이름을 입력하고 서비스 선택 및 구성을 클릭하십시오.
  • SHA1 제공 Google SIGNIN 사용 및 구성 파일 생성

구성 파일을 다운로드하고 프로젝트의 app / 폴더에 파일을 저장하십시오.

  1. 프로젝트 수준 build.gradle에 종속성을 추가합니다.

classpath 'com.google.gms : google-services : 3.0.0'

  1. 앱 수준 build.gradle에 플러그인을 추가합니다. (아래)

플러그인 적용 : 'com.google.gms.google-services'

  1. 이 종속성을 앱 gradle 파일에 추가하십시오.

dependencies {compile 'com.google.android.gms : play-services-auth : 9.8.0'}

코드 구현 Google SignIn

  • 로그인 활동의 onCreate 메소드에서 Google 로그인을 구성하여 앱에 필요한 사용자 데이터를 요청합니다.
 GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
        .requestEmail()
        .build();
  • Google 로그인 API 및 지정한 옵션에 액세스 할 수있는 GoogleApiClient 객체를 만듭니다.
 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);
     }
    }
    


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow