카카오 로그인

정재한·2022년 12월 15일
0

앱개발

목록 보기
22/23
kakaoLogin() async {
    if(await isKakaoTalkInstalled()){
      try {
        OAuthToken token = await UserApi.instance.loginWithKakaoTalk();
        print('카카오톡으로 로그인 성공 ${token.accessToken}');
          if(token != null){
            try {
              User user = await UserApi.instance.me();
              if(user != null){
                // 사용자의 추가 동의가 필요한 사용자 정보 동의 항목 확인
                List<String> scopes = [];
                scopes.add("profile");
                if (scopes.length > 0) {
                  OAuthToken token;
                  try {
                    token = await UserApi.instance.loginWithNewScopes(scopes);
                    print('현재 사용자가 동의한 동의 항목: ${token.scopes}');

                    // 사용자 정보 재요청
                    try {
                      User user = await UserApi.instance.me();
                      print('사용자 정보 요청 성공'
                          '\n회원번호: ${user.id}'
                          '\n닉네임: ${user.kakaoAccount?.profile?.nickname}'
                          '\n이미지: ${user.kakaoAccount?.profile?.profileImageUrl}'
                          '\n이메일: ${user.kakaoAccount?.email}');
                    } catch (error) {
                      print('사용자 정보 요청 실패 $error');
                    }
                  } catch (error) {
                    print('추가 동의 요청 실패 $error');
                    return;
                  }
                }
              }
            } catch (error) {
              print('사용자 정보 요청 실패 $error');
              return;
            }
          }
      } catch (error) {
        print('카카오톡으로 로그인 실패 $error');
      }
    }

  }

0개의 댓글

관련 채용 정보