티스토리 뷰
반응형
SMALL
파이어 베이스 Authentication 탭에서 구글 로그인 사용 설정으로 바꿔 준다.
이때 필요한게 프로젝트 SHA1 인증 키가 필요.
우선 릴리즈 버전일 때는 또 다른 작업이 필요하지만 우선 디버딩앱 일 때 예를 들어 본다.
우선 참고 : https://firebase.google.com/docs/auth/android/google-signin?authuser=0
반응형
필요 gradle 파일
implementation 'com.google.firebase:firebase-auth:19.1.0'
implementation 'com.google.android.gms:play-services-auth:17.0.0'
버튼 클릭 시 호출
val mGoogleSignInClient = GoogleSignIn.getClient(this,
GoogleSignInOptions.Builder(
GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestIdToken(getString(R.string.default_web_client_id))
.requestEmail()
.build()
)
startActivityForResult(mGoogleSignInClient.signInIntent, 100)
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == 100) {
val task: Task<GoogleSignInAccount> = GoogleSignIn.getSignedInAccountFromIntent(data)
try {
val account: GoogleSignInAccount = task.getResult(ApiException::class.java)!!
firebaseAuthWithGoogle(account)
} catch (e: ApiException) {
Toast.makeText(this, "Google sign in failed:(", Toast.LENGTH_LONG).show()
Log.e(TAG, "Error > $e")
}
}
}
private fun firebaseAuthWithGoogle(acct: GoogleSignInAccount) {
val credential = GoogleAuthProvider.getCredential(acct.idToken, null)
FirebaseAuth
.getInstance()
.signInWithCredential(credential)
.addOnCompleteListener {
if (it.isSuccessful) {
FirebaseInstanceId
.getInstance()
.instanceId
.addOnSuccessListener { token ->
// 토큰 가져오기.
val toKen = token.token
}
goToMain(this)
} else {
Toast.makeText(this, "Google sign in failed:(", Toast.LENGTH_LONG).show()
}
}
}
로그아웃 시에는
val firebaseAuth by lazy { FirebaseAuth.getInstance() }
if (firebaseAuth.currentUser != null) {
firebaseAuth.signOut()
}
일반 버튼으로 해도 되고
구글에서 제공해 주는 버튼 으로 해도 되고
<com.google.android.gms.common.SignInButton
android:id="@+id/btn_googleSignIn"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</com.google.android.gms.common.SignInButton>
[ 참고 ] Release App SHA1 얻기
참고 : http://fabcoding.com/how-to-obtain-sha1-keys-for-debug-and-release-android-studio-mac/
앱 키스토어 발급
우선 구글 API 에 접속
https://console.developers.google.com/apis
사용자 인증 정보 만들기 클릭
터미널에서
keytool -list -v -keystore <키스토어 저장되어 있는 곳 경로 와 키스토어이름 까지 > -alias <키 스토어 만들 때 alias>
아마 비밀번호도 한번 물어 볼거니까 기억 하고 있어야 함.
여기서 나온 SHA1 정보를 사용자 인증정보 만들기에 넣고 생성 하기.
그러면 바로 앱을 릴리즈로 말고 나서 테스트 하면 됨.
반응형
LIST
'Android > Firebase' 카테고리의 다른 글
[ Firebase #4 ] Firebase Storage (0) | 2020.04.17 |
---|---|
[ Firebase #2 ] Authentication 이메일 인증 (0) | 2020.04.09 |
[ Firebase #1 ] 파이어베이스 연결 (0) | 2020.04.09 |
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Fragment data
- 쏘렌토 하이브리드
- aos img url bitmap
- wear os
- 폴더블 상태 유지
- Android Wear Os
- widget 이미지 로딩
- Android
- RandomColor
- 역시 키크론이네
- widget onreceive
- 갤럭시 워치
- widget onupdate
- flutter web
- 웨어러블
- 풀배열 키보드
- 폴더블 이벤트 받기
- widget 만들기
- 안드로이드 폴드 대응
- 프래그먼트 데이터 저장
- Dot indicator
- 안드로이드 플립 대응
- Foldable Event
- 폰과 워치 페어링
- android widget 만들기
- 가중치랜덤
- 랜덤컬러
- 맥 전용
- 쏘렌토 하이브리드 시그니처
- widget glide
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함