UserApiClient

class UserApiClient(userApi: UserApi, userApiNoLog: UserApi, tokenManagerProvider: TokenManagerProvider)

사용자관리 API 호출을 담당하는 클라이언트.

Constructors

Link copied to clipboard
fun UserApiClient(userApi: UserApi = ApiFactory.kapiWithOAuth.create(UserApi::class.java), userApiNoLog: UserApi = ApiFactory.kapiWithOAuthNoLog.create(UserApi::class.java), tokenManagerProvider: TokenManagerProvider = TokenManagerProvider.instance)

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard
fun accessTokenInfo(callback: (tokenInfo: AccessTokenInfo?, error: Throwable?) -> Unit)

현재 로그인한 사용자의 엑세스 토큰 정보 보기.

Link copied to clipboard
fun isKakaoTalkLoginAvailable(context: Context): Boolean

카카오톡으로 로그인 가능(설치) 여부 검사.

Link copied to clipboard
fun loginWithKakaoAccount(context: Context, prompts: List<Prompt>? = null, loginHint: String? = null, nonce: String? = null, channelPublicIds: List<String>? = null, serviceTerms: List<String>? = null, callback: (token: OAuthToken?, error: Throwable?) -> Unit)

카카오계정으로 로그인. 기본 웹 브라우저(CustomTabs)에 있는 카카오계정 cookie 로 사용자를 인증하고 OAuthToken 발급.

Link copied to clipboard
fun loginWithKakaoTalk(context: Context, requestCode: Int = AuthCodeClient.DEFAULT_REQUEST_CODE, nonce: String? = null, channelPublicIds: List<String>? = null, serviceTerms: List<String>? = null, callback: (token: OAuthToken?, error: Throwable?) -> Unit)

카카오톡으로 로그인. 카카오톡에 연결된 카카오계정으로 사용자를 인증하고 OAuthToken 발급.

Link copied to clipboard
fun loginWithNewScopes(context: Context, scopes: List<String>, nonce: String? = null, callback: (token: OAuthToken?, error: Throwable?) -> Unit)

사용자가 아직 동의하지 않은 개인정보 및 접근권한 동의 항목에 대하여 동의를 요청하는 동의 화면을 출력하고, 사용자 동의 시 동의항목이 업데이트 된 OAuthToken 발급.

Link copied to clipboard
fun logout(callback: (error: Throwable?) -> Unit)

현재 토큰을 강제로 만료시키고 로그아웃.

Link copied to clipboard
fun me(properties: List<String>? = null, secureResource: Boolean = true, callback: (user: User?, error: Throwable?) -> Unit)

사용자 정보 요청.

Link copied to clipboard
fun revokeScopes(scopes: List<String>, callback: (scopeInfo: ScopeInfo?, error: Throwable?) -> Unit)

사용자의 특정 동의 항목에 대한 동의를 철회하고, 남은 사용자 동의 항목의 상세 정보 목록 반환.

Link copied to clipboard
fun revokeServiceTerms(tags: List<String>, callback: (userRevokedServiceTerms: UserRevokedServiceTerms?, error: Throwable?) -> Unit)

특정 서비스 약관에 대한 동의를 철회하고, 동의 철회가 반영된 서비스 약관 목록 반환

Link copied to clipboard
fun scopes(scopes: List<String>? = null, callback: (scopeInfo: ScopeInfo?, error: Throwable?) -> Unit)

사용자 동의 항목의 상세 정보 목록 반환.

Link copied to clipboard
fun selectShippingAddresses(context: Context, callback: (addressId: Long?, error: Throwable?) -> Unit)

배송지 선택하기

Link copied to clipboard
fun serviceTerms(tags: List<String>? = null, result: String? = null, callback: (userServiceTerms: UserServiceTerms?, error: Throwable?) -> Unit)

서비스 약관 내역 반환.

Link copied to clipboard
fun shippingAddresses(addressId: Long, callback: (userShippingAddresses: UserShippingAddresses?, error: Throwable?) -> Unit)
fun shippingAddresses(fromUpdatedAt: Date? = null, pageSize: Int? = null, callback: (userShippingAddresses: UserShippingAddresses?, error: Throwable?) -> Unit)

사용자의 배송지 정보 획득.

Link copied to clipboard
fun signup(properties: Map<String, String>? = null, callback: (error: Throwable?) -> Unit)

앱 연결 상태가 PREREGISTER 상태의 사용자에 대하여 앱 연결 요청. 자동연결 설정을 비활성화한 앱에서 사용.

Link copied to clipboard
fun unlink(callback: (error: Throwable?) -> Unit)

연결 끊기. 카카오 로그인을 통한 사용자와 서비스 간의 연결 관계를 해제하고 사용자의 정보 제공 및 카카오 플랫폼 사용을 중단.

Link copied to clipboard
fun updateProfile(properties: Map<String, String>, callback: (error: Throwable?) -> Unit)

User 클래스에서 제공되고 있는 사용자의 부가정보를 신규저장 및 수정.