네아로

매일 수정하는 GNOSS LV5·2021년 10월 6일
1

AndroidStudio

목록 보기
22/83

그 유명한 네아로를 구현해보자.

사족떼고 구현하는 방법만 딱 적어본다.

https://developers.naver.com/docs/login/android/android.md
사전 준비 ( 앱등록, 클라이언트id , secret) 을 받아온다.


  1. buildgradle 추가하기

!!주의사항!!

이상한 에러가 발생할수 있다.

내가 발생한 에러와 해결 방법은 다음과 같다.

app단의 deafultConfig을 보면 targetSdk 가 31로 되어있는데 30으로 변경하자.

//Naver
implementation 'com.naver.nid:naveridlogin-android-sdk:4.2.6'

  1. manifest 추가하기

인터넷을 통신해야하니까

<uses-permission android:name="android.permission.INTERNET" />

  1. 원하는 페이지에 버튼만들기
    !! 주의사항 !!
    OAuthButton으로 만들어야 한다.
<com.nhn.android.naverlogin.ui.view.OAuthLoginButton
        android:id="@+id/btn_naver"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

  1. Fragment기준으로 진행합니다.

Activity라면 requireActivity() → this로 변경.

class LoginDialog : Fragment() {

    private val mOAuthLoginModule: OAuthLogin = OAuthLogin.getInstance()
		override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)
//  네이버 아이디로 로그인
        mOAuthLoginModule.init(
            requireActivity()
            ,getString(R.string.naver_client_id)
            ,getString(R.string.naver_client_secret)
            ,getString(R.string.app_name)
        )

        binding.btnNaver.apply {
            setOAuthLoginHandler(mOAuthLoginHandler)
            setBgResourceId(R.drawable.btn_naver)
        }

		binding.btnNaver.setOnClickListener {
            naverLogin()
        }
		}

		private fun naverLogin(){
        mOAuthLoginModule.startOauthLoginActivity(requireActivity(), mOAuthLoginHandler)
    }
}
profile
러닝커브를 따라서 등반중입니다.

0개의 댓글