naveridlogin-sdk-android icon indicating copy to clipboard operation
naveridlogin-sdk-android copied to clipboard

[문의 사항] 안드로이드 네이버 로그인 관련

Open lsh3666 opened this issue 4 months ago • 0 comments

문의 사항

문의 사항

플러터에서 언드로이드 함수를 콜하여 네이버 로그인을 시키는 방법을 적용하고 있습니다. 아래와 같이 코드를 작성하여 네이버 로그인을 진행하면 네이버 로그인 하는 페이지가 뜨고 로그인이 정상적으로 진행이 되고 동의하는 화면까지는 정상적으로 가집니다.

그런데 거기서 "동의하기 버튼"을 누르면 onSuccess, onFailure, onError에 응답이 안오고 앱 화면으로도 돌아가지도 않고 네이버 동의하는 화면만 새로고침 되듯이 계속 노출이 됩니다. 정상적으로 작동하게 하려면 어떻게 해야 될까요?

Reference

import android.os.Bundle
import android.util.Log
import com.navercorp.nid.NaverIdLoginSDK
import com.navercorp.nid.oauth.NidOAuthBehavior
import com.navercorp.nid.oauth.OAuthLoginCallback
import io.flutter.embedding.android.FlutterActivity
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugin.common.MethodChannel

class MainActivity : FlutterActivity() {
    private val CHANNEL = "채널이름"


    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        NaverIdLoginSDK.initialize(context, {OAUTH_CLIENT_ID}, {OAUTH_CLIENT_SECRET}, {OAUTH_CLIENT_NAME})
    }

    override fun configureFlutterEngine(flutterEngine: FlutterEngine) {
        super.configureFlutterEngine(flutterEngine)
        MethodChannel(flutterEngine.dartExecutor.binaryMessenger, CHANNEL).setMethodCallHandler { call, result ->
            if (call.method == "naverLogin") {
                NaverIdLoginSDK.authenticate(this, object : OAuthLoginCallback{
                    override fun onSuccess() {
                        Log.d("testtest", "로그인 성공")
                    }

                    override fun onFailure(httpStatus: Int, message: String) {
                        val errorCode = NaverIdLoginSDK.getLastErrorCode().code
                        val errorDescription = NaverIdLoginSDK.getLastErrorDescription()
                        Log.d("testtest", "errorCode:$errorCode, errorDesc:$errorDescription")
                    }

                    override fun onError(errorCode: Int, message: String) {
                        onFailure(errorCode, message)
                    }
                })
            } else {
                result.notImplemented()
            }
        }
    }


}

lsh3666 avatar Oct 21 '24 06:10 lsh3666