public class Session extends Object implements com.kakao.authorization.Authorizer.OnAuthorizationListener
Modifier and Type | Field and Description |
---|---|
static int |
ACCESS_TOKEN_REQUEST |
static int |
AUTHORIZATION_CODE_REQUEST |
Modifier and Type | Method and Description |
---|---|
void |
addCallback(SessionCallback callback)
세션 상태 변화 콜백을 받고자 할때 콜백을 등록한다.
|
void |
checkAccessTokenInfo()
토큰 유효성을 검사하고 만료된 경우 갱신시켜 준다.
|
com.kakao.Session.SessionState |
checkState()
현재 세션이 가지고 있는 access token이 유효한지를 검사후 세션의 상태를 반환한다.
|
void |
close()
명시적 강제 close(로그아웃/탈퇴).
|
String |
getAccessToken()
현재 세션이 가지고 있는 access token을 반환한다.
|
static com.kakao.helper.SharedPreferencesCache |
getAppCache()
앱 캐시를 반환한다.
|
AuthType[] |
getAuthTypes() |
Context |
getContext() |
static Session |
getCurrentSession()
현재 세션을 반환한다.
|
com.kakao.Session.RequestType |
getRequestType()
현재 진행 중인 요청 타입
|
com.kakao.Session.SessionState |
getState()
현재 세션의 상태
|
boolean |
handleActivityResult(int requestCode,
int resultCode,
Intent data) |
boolean |
implicitOpen()
토큰 갱신이 가능한지 여부를 반환한다.
|
static void |
initialize(Context context)
Application 이 최초 구동시, Session 을 초기화 합니다.
|
static void |
initialize(Context context,
ApprovalType approvalType,
AuthType... authTypes) |
static void |
initialize(Context context,
AuthType... authTypes) |
boolean |
isClosed()
현재 세션이 닫힌 상태인지 여부를 반환한다.
|
boolean |
isOpenable()
현재 세션이 오픈중(갱신 포함) 상태인지 여부를 반환한다.
|
boolean |
isOpened()
현재 세션이 열린 상태인지 여부를 반환한다.
|
boolean |
isProjectLogin() |
void |
onAccessTokenCompleted(com.kakao.authorization.AuthorizationResult result)
access token 결과를 받아 처리한다.
|
void |
onAuthCodeCompleted(com.kakao.authorization.AuthorizationResult result)
authorization code 결과를 받아 처리한다.
|
void |
onAuthorizationCompletion(com.kakao.authorization.AuthorizationResult result) |
void |
open(AuthType authType,
Activity callerActivity)
세션 오픈을 진행한다.
|
void |
removeCallback(SessionCallback callback)
더이상 세션 상태 변화 콜백을 받고 싶지 않을 때 삭제한다.
|
public static final int ACCESS_TOKEN_REQUEST
public static final int AUTHORIZATION_CODE_REQUEST
public void addCallback(SessionCallback callback)
callback
- 추가할 세션 콜백public void checkAccessTokenInfo()
public final com.kakao.Session.SessionState checkState()
public void close()
public final String getAccessToken()
public static com.kakao.helper.SharedPreferencesCache getAppCache()
public AuthType[] getAuthTypes()
public Context getContext()
public static Session getCurrentSession()
public final com.kakao.Session.RequestType getRequestType()
public com.kakao.Session.SessionState getState()
public boolean handleActivityResult(int requestCode, int resultCode, Intent data)
public boolean implicitOpen()
public static void initialize(Context context)
context
- 세션을 접근하는 context. 여기로 부터 app key와 redirect uri를 구해온다.authTypes
- 로그인시 인증받을 타입을 지정한다. 지정하지 않을 시 가능한 모든 옵션이 지정된다. 예시) AuthType.KAKAO_TALKpublic static void initialize(Context context, ApprovalType approvalType, AuthType... authTypes)
public final boolean isClosed()
public boolean isOpenable()
public final boolean isOpened()
public boolean isProjectLogin()
public void onAccessTokenCompleted(com.kakao.authorization.AuthorizationResult result)
public void onAuthCodeCompleted(com.kakao.authorization.AuthorizationResult result)
public void onAuthorizationCompletion(com.kakao.authorization.AuthorizationResult result)
onAuthorizationCompletion
in interface com.kakao.authorization.Authorizer.OnAuthorizationListener
public void open(AuthType authType, Activity callerActivity)
SessionState#OPENED
상태이면 바로 종료. SessionState#CLOSED
상태이면 authorization code 요청. 에러/취소시 SessionState#CLOSED
SessionState#OPENABLE
상태이면 code 또는 refresh token 이용하여 access token 을 받아온다. 에러/취소시 SessionState#CLOSED
, refresh 취소시에만 SessionState#OPENABLE
유지. authType
- 인증받을 타입. 예를 들어, 카카오톡 또는 카카오스토리 또는 직접 입력한 카카오계정callerActivity
- public void removeCallback(SessionCallback callback)
callback
- 삭제할 콜백Copyright © 2015 Kakao Corp. All rights reserved.