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');
}
}
}