안녕하세요 제가 카카오 로그인 api 이용해서 로그인 하고 로그 아웃 엑티비티와 xml을 만들었는데 인텐트 이동 시킬려고 하는데
인텐트를 어디에 적용시켜야 이동이 되는지 궁금 합니다.
//카카오톡 로그인 api
class KakaoAuth extends AppCompatActivity {
//SessionCallback 선언
private SessionCallback Callback;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
UserManagement.getInstance().requestLogout(new LogoutResponseCallback() {
@Override
public void onCompleteLogout() {
}
});
Callback = new SessionCallback();
Session.getCurrentSession().addCallback(Callback);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
//간편로그인시 호출 ,없으면 간편로그인시 로그인 성공화면으로 넘어가지 않음
if (Session.getCurrentSession().handleActivityResult(requestCode, resultCode, data)) {
return;
}
super.onActivityResult(requestCode, resultCode, data);
}
@Override
protected void onDestroy() {
super.onDestroy();
Session.getCurrentSession().removeCallback(Callback);
}
public class SessionCallback implements ISessionCallback {
// 로그인에 성공한 상태
@Override
public void onSessionOpened() {
requestMe();
}
// 로그인에 실패한 상태
@Override
public void onSessionOpenFailed(KakaoException exception) {
Log.e("SessionCallback :: ", "onSessionOpenFailed : " + exception.getMessage());
}
// 사용자 정보 요청
public void requestMe(){
UserManagement.getInstance().me(new MeV2ResponseCallback() {
@Override
public void onSessionClosed(ErrorResult errorResult) {
Log.e("KAKAO_API", "세션이 닫혀 있음: " + errorResult);
}
@Override
public void onFailure(ErrorResult errorResult) {
Log.e("KAKAO_API", "사용자 정보 요청 실패: " + errorResult);
}
@Override
public void onSuccess(MeV2Response result) {
Log.i("KAKAO_API", "사용자 아이디: " + result.getId());
UserAccount kakaoAccount = result.getKakaoAccount();
if(kakaoAccount != null){
//이메일
String email = kakaoAccount.getEmail();
if(email != null){
Log.i("KAKAO_API", "email: " + email);
} else if(kakaoAccount.emailNeedsAgreement() == OptionalBoolean.TRUE){
// 동의 요청 후 이메일 획득 가능
// 단, 선택 동의로 설정되어 있다면 서비스 이용 시나리오 상에서 반드시 필요한 경우에만 요청해야 합니다.
} else {
// 이메일 획득 불가
}
}
// 프로필
Profile profile = kakaoAccount.getProfile();
if(profile != null){
Log.d("KAKAO_API", "nickname: " + profile.getNickname());
Log.d("KAKAO_API", "profile image: " + profile.getProfileImageUrl());
Log.d("KAKAO_API", "thumbnail image: " + profile.getThumbnailImageUrl());
} else if(kakaoAccount.profileNeedsAgreement() == OptionalBoolean.TRUE){
// 동의 요청 후 프로필 정보 획득 가능
} else {
//프로필 흭득 불가
}
}
});
}
}
}