Tinder앱에 facebook 로그인 기능을 구현하기 위해 먼저 UI를 구성해주었습니다.
<com.facebook.login.widget.LoginButton
app:layout_constraintTop_toBottomOf="@+id/loginButton"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:layout_width="0dp"
android:layout_marginTop="30dp"
android:id="@+id/facebookLoginButton"
android:layout_height="wrap_content"/>
facebook 로그인 버튼의 기능을 초기화 해주었습니다.
private fun initFacebookLoginButton(){
val facebookLoginButton = findViewById<LoginButton>(R.id.facebookLoginButton)
facebookLoginButton.setPermissions("email", "public_profile")
facebookLoginButton.registerCallback(callbackManager, object : FacebookCallback<LoginResult>{
override fun onSuccess(result: LoginResult) {
val credential = FacebookAuthProvider.getCredential(result.accessToken.token)
auth.signInWithCredential(credential)
.addOnCompleteListener { task ->
if(task.isSuccessful){
finish()
}else{
Toast.makeText(this@LoginActivity, "페이스북 로그인에 실패했습니다.", Toast.LENGTH_SHORT).show()
}
}
}
override fun onCancel() {
TODO("Not yet implemented")
}
override fun onError(error: FacebookException?) {
Toast.makeText(this@LoginActivity, "페이스북 로그인에 실패했습니다.", Toast.LENGTH_SHORT).show()
}
})
}
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
callbackManager.onActivityResult(requestCode, resultCode, data)
}
패스트캠퍼스 바로가기 -> https://bit.ly/3FVdhDa
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
'패스트캠퍼스 챌린지' 카테고리의 다른 글
[패스트캠퍼스 챌린지 29일차] Android tinder 앱 마무리 (0) | 2021.11.29 |
---|---|
[패스트캠퍼스 챌린지 28일차] Android tinder DB 설정 (0) | 2021.11.28 |
[패스트캠퍼스 챌린지 26일차] Android Tinder 앱 UI 및 로그인 기능 (0) | 2021.11.26 |
[패스트캠퍼스 챌린지 25일차] Android tinder app 설정 (0) | 2021.11.25 |
[패스트캠퍼스 챌린지 24일차] Android book review 마무리 (0) | 2021.11.24 |