클래스 사용자
- java.lang.Object
-
- io.realm.mongodb.User
-
public class User extends Object
사용자 는 Realm 앱 기능에 액세스하기 위해 사용자의 메타데이터와 토큰을 보유합니다.사용자는 동기화된 Realm을 구성하는 데 사용되며 를 통해 Realm 앱 함수 를
Functions
호출하고 를 통해 원격 Realm 앱 Mongo 데이터베이스 에 액세스할 수 있는 액세스MongoClient
권한을 부여합니다.- 다음도 참조하세요.
App.login(Credentials)
,Builder(User, String)
-
-
중첩된 클래스 요약
중첩된 클래스 수정자 및 유형 클래스 설명 static class
User.State
사용자의 잠재적 상태입니다.
-
메서드 요약
모든 메서드 인스턴스 메서드 구체적인 방법 수정자 및 유형 메서드 설명 boolean
equals(Object o)
두 명의 사용자가 동일한 사용자 ID를 가지고 있고 동일한 앱에 연결된 경우 동등한 것으로 간주됩니다.String
getAccessToken()
사용자의 현재 액세스 토큰을 반환합니다.ApiKeyAuth
getApiKeys()
현재 사용자가 제어하는 API 키를 관리하기 위한 래퍼를 반환합니다.App
getApp()
이 사용자와 연결된App
을 반환합니다.Document
getCustomData()
Realm 앱에서 사용자와 연결된 사용자 지정 사용자 데이터를 반환합니다.String
getDeviceId()
사용자가 로그인한 기기의 고유 식별자를 반환합니다.Functions
getFunctions()
MongoDB Realm 함수를 호출하기 위한 functions 관리자를 반환합니다.Functions
getFunctions(CodecRegistry codecRegistry)
인수와 결과를 인코딩하고 디코딩하기 위한 사용자 지정 코덱 레지스트리를 사용하여 Realm 함수를 호출하기 위한 함수 관리자를 반환합니다.String
getId()
사용자의 서버 ID를 반환합니다.List<UserIdentity>
getIdentities()
사용자 ID의 새 목록을 반환합니다.MongoClient
getMongoClient(String serviceName)
데이터베이스의 문서에 액세스하기 위한MongoClient
인스턴스를 반환합니다.UserProfile
getProfile()
이 사용자의 프로필을 반환합니다.Credentials.Provider
getProviderType()
사용자를 기록하는 데 사용되는 제공자 유형을 반환합니다.Push
getPush(String serviceName)
푸시 알림 등록을 관리하기 위한Push
인스턴스를 반환합니다.String
getRefreshToken()
사용자의 현재 새로 고침 토큰을 반환합니다.User.State
getState()
사용자가 속한User.State
를 반환합니다.int
hashCode()
boolean
isLoggedIn()
사용자가 현재 로그인되어 있으면 true를 반환합니다.User
linkCredentials(Credentials credentials)
현재 사용자를 지정된 자격 증명으로 나타나는 새 사용자 ID와 연결합니다.RealmAsyncTask
linkCredentialsAsync(Credentials credentials, App.Callback<User> callback)
현재 사용자를 지정된 자격 증명으로 나타나는 새 사용자 ID와 연결합니다.void
logOut()
Realm 앱에서 사용자를 로그아웃합니다.RealmAsyncTask
logOutAsync(App.Callback<User> callback)
Realm 앱에서 사용자를 비동기적으로 로그아웃합니다.Document
refreshCustomData()
Realm 앱에서 사용자 지정 사용자 데이터를 다시 가져옵니다.RealmAsyncTask
refreshCustomData(App.Callback<Document> callback)
Realm 앱에서 사용자 지정 사용자 데이터를 비동기적으로 다시 가져옵니다.User
remove()
이 메서드를 호출하면 사용자 및 사용자가 가진 모든 Realm이 장치에서 제거됩니다.RealmAsyncTask
removeAsync(App.Callback<User> callback)
이 메서드를 호출하면 사용자와 사용자가 가진 모든 Realm이 장치에서 비동기적으로 제거됩니다.
-
-
-
메서드 세부 정보
-
getId
public String getId()
사용자의 서버 ID를 반환합니다.- 반환합니다:
- 사용자의 서버 ID입니다.
-
getProfile
public UserProfile getProfile()
이 사용자의 프로필을 반환합니다.- 반환합니다:
- 이 사용자의 프로필
-
getIdentities
public List<UserIdentity> getIdentities()
사용자 ID의 새 목록을 반환합니다.- 반환합니다:
- ID 목록.
- 다음도 참조하세요.
UserIdentity
-
getProviderType
public Credentials.Provider getProviderType()
사용자를 기록하는 데 사용되는 제공자 유형을 반환합니다.- 반환합니다:
- 사용자의 제공자 유형
-
getAccessToken
public String getAccessToken()
사용자의 현재 액세스 토큰을 반환합니다.- 반환합니다:
- 현재 액세스 토큰.
-
getRefreshToken
public String getRefreshToken()
사용자의 현재 새로 고침 토큰을 반환합니다.- 반환합니다:
- 현재 새로 고침 토큰.
-
getDeviceId
public String getDeviceId()
사용자가 로그인한 기기의 고유 식별자를 반환합니다.- 반환합니다:
- 사용자의 고유한 기기 식별자입니다.
-
getState
공개 User.State getState()
사용자가 속한User.State
를 반환합니다.- 반환합니다:
- 사용자의
User.State
입니다.
-
getCustomData
공개 문서 getCustomData()
Realm 앱에서 사용자와 연결된 사용자 지정 사용자 데이터를 반환합니다.데이터는 사용자의 액세스 토큰을 새로 고치거나
refreshCustomData()
을 명시적으로 호출할 때만 새로 고쳐집니다.- 반환합니다:
- 사용자와 연결된 사용자 지정 사용자 데이터입니다.
-
refreshCustomData
공개 문서 refreshCustomData()
Realm 앱에서 사용자 지정 사용자 데이터를 다시 가져옵니다.- 반환합니다:
- 사용자와 연결된 업데이트된 사용자 지정 사용자 데이터입니다.
- 예외 처리:
AppException
- 요청이 어떤 방식으로든 실패한 경우.
-
refreshCustomData
public RealmAsyncTask refreshCustomData(App.Callback<Document> callback)
Realm 앱에서 사용자 지정 사용자 데이터를 비동기적으로 다시 가져옵니다.이는
refreshCustomData()
의 비동기 변형입니다.- 매개변수:
callback
- 요청의 결과 또는 오류를 수신할 콜백입니다.- 반환합니다:
- 진행 중인 작업을 나타내는 작업입니다.
- 예외 처리:
IllegalStateException
- 루퍼 스레드에서 호출되지 않은 경우.
-
isLoggedIn
공개 부울 isLoggedIn()
사용자가 현재 로그인되어 있으면 true를 반환합니다. 이 사용자가 여전히 MongoDB Realm 앱에 로그인되어 있는지 여부를 반환합니다.- 반환합니다:
true
여전히 로그인되어 있으면false
을 입력합니다.
-
링크 자격 증명
public 사용자 링크Credentials(Credentials credentials)
현재 사용자를 지정된 자격 증명으로 나타나는 새 사용자 ID와 연결합니다.더 많은 자격 증명을 가진 사용자를 연결하면 사용자가 이러한 자격 증명 중 하나에 로그인할 수 있습니다. 또한 익명 사용자를 다음과 같이 연결하여 '업그레이드'할 수도 있습니다. 이메일/비밀번호 자격 증명.
// Example App app = new App("app-id") User user = app.login(Credentials.anonymous()); user.linkCredentials(Credentials.emailPassword("email", "password"));
참고: MongoDB Realm의 기존 사용자 두 명을 연결할 수 없습니다. 제공된 자격 증명은 다른 사용자가 사용한 적이 없어야 합니다.
- 매개변수:
credentials
- 현재 사용자와 연결할 자격 증명입니다.- 반환합니다:
User
자격 증명이 연결되었습니다.- 예외 처리:
IllegalStateException
- 현재 로그인한 사용자가 없는 경우.
-
LinkCredentialsAsync
public RealmAsyncTask linkCredentialsAsync(Credentials credentials, App.Callback<User> callback)
현재 사용자를 지정된 자격 증명으로 나타나는 새 사용자 ID와 연결합니다.더 많은 자격 증명을 가진 사용자를 연결하면 사용자가 이러한 자격 증명 중 하나에 로그인할 수 있습니다. 또한 익명 사용자를 다음과 같이 연결하여 '업그레이드'할 수도 있습니다. 이메일/비밀번호 자격 증명.
// Example App app = new App("app-id") User user = app.login(Credentials.anonymous()); user.linkCredentials(Credentials.emailPassword("email", "password"));
참고: MongoDB Realm의 기존 사용자 두 명을 연결할 수 없습니다. 제공된 자격 증명은 다른 사용자가 사용한 적이 없어야 합니다.
- 매개변수:
credentials
- 현재 사용자와 연결할 자격 증명입니다.callback
- 사용자 ID가 연결되었거나 실패했을 때 콜백합니다. 콜백은 항상 이 메서드가 호출되는 동일한 스레드에서 발생합니다.- 예외 처리:
IllegalStateException
- 이벤트 루프가 아닌 스레드에서 호출된 경우.
-
제거
공개 사용자 remove()가 AppException을 발생시킵니다.
이 메서드를 호출하면 사용자 및 사용자가 가진 모든 Realm이 장치에서 제거됩니다. 서버에서 데이터가 제거되지 않습니다. 이 메서드를 호출할 때 사용자가 로그인되어 있었다면 데이터가 삭제되기 전에 사용자가 로그아웃됩니다.- 반환합니다:
- 제거된 사용자입니다.
- 예외 처리:
AppException
- 사용자를 제거하는 동안 오류가 발생한 경우.
-
removeAsync
public RealmAsyncTask removeAsync(App.Callback<User> callback)
이 메서드를 호출하면 사용자와 사용자가 가진 모든 Realm이 장치에서 비동기적으로 제거됩니다. 서버에서 데이터가 제거되지 않습니다. 이 메서드를 호출할 때 사용자가 로그인되어 있었다면 데이터가 삭제되기 전에 사용자가 로그아웃됩니다.- 매개변수:
callback
- 사용자 제거가 완료되었거나 실패했을 때 콜백합니다. 콜백은 항상 이 메서드가 호출되는 동일한 스레드에서 발생합니다.- 예외 처리:
IllegalStateException
- 이벤트 루프가 아닌 스레드에서 호출된 경우.
-
로그아웃
public void logOut() throws AppException
Realm 앱에서 사용자를 로그아웃합니다. 이렇게 하면 기기에서 사용자의 등록이 해제되고 사용자의 Realm과의 동기화가 중지됩니다.remove()
이(가) 호출되기 전에는 사용자가 소유한 Realm이 기기에서 삭제되지 않습니다.Realm 앱이 로그아웃을 확인하면 등록된 모든
AuthenticationListener
에게 알림이 전송되고 이 장치에서 사용자 자격 증명이 삭제됩니다.익명 사용자를 로그아웃하면
User.State.LOGGED_OUT
로 표시하지 않고 즉시 제거됩니다.다른 모든 사용자는
User.State.LOGGED_OUT
로 표시되며 여전히App.allUsers()
에 의해 반환됩니다.remove()
를 호출하여 완전히 제거할 수 있습니다.- 예외 처리:
AppException
- 사용자를 Realm 앱에서 로그아웃하는 동안 오류가 발생한 경우
-
logOutAsync
public RealmAsyncTask logOutAsync(App.Callback<User> callback)
Realm 앱에서 사용자를 비동기적으로 로그아웃합니다. 이렇게 하면 기기에서 사용자의 등록이 해제되고 사용자의 Realm과의 동기화가 중지됩니다.remove()
이(가) 호출되기 전에는 사용자가 소유한 Realm이 기기에서 삭제되지 않습니다.Realm 앱이 로그아웃을 확인하면 등록된 모든
AuthenticationListener
에게 알림이 전송되고 이 장치에서 사용자 자격 증명이 삭제됩니다.익명 사용자를 로그아웃하면
User.State.LOGGED_OUT
로 표시하지 않고 즉시 제거됩니다.다른 모든 사용자는
User.State.LOGGED_OUT
로 표시되며 여전히App.allUsers()
에 의해 반환됩니다.remove()
를 호출하여 완전히 제거할 수 있습니다.- 매개변수:
callback
- 로그아웃 완료 또는 실패 시 콜백합니다. 콜백은 항상 이 메서드가 호출되는 동일한 스레드에서 발생합니다.- 예외 처리:
IllegalStateException
- 이벤트 루프가 아닌 스레드에서 호출된 경우.
-
getApiKeys
public ApiKeyAuth getApiKeys()
현재 사용자가 제어하는 API 키를 관리하기 위한 래퍼를 반환합니다.- 반환합니다:
- 현재 사용자가 제어하는 API 키를 관리하기 위한 래퍼입니다.
- 예외 처리:
IllegalStateException
- 현재 로그인한 사용자가 없는 경우.
-
getFunctions
public Functions getFunctions()
MongoDB Realm 함수를 호출하기 위한 functions 관리자를 반환합니다.그러면 연결된 앱의 기본 코덱 레지스트리를 사용하여 인수와 결과를 인코딩하고 디코딩합니다.
- 다음도 참조하세요.
Functions
-
getFunctions
public Functions getFunctions(CodecRegistry CodecRegistry)
인수와 결과를 인코딩하고 디코딩하기 위한 사용자 지정 코덱 레지스트리를 사용하여 Realm 함수를 호출하기 위한 함수 관리자를 반환합니다.- 매개변수:
codecRegistry
- 원격 Realm 앱에 대한 인수와 결과를 인코딩 및 디코딩하는 데 사용할 코덱 레지스트리입니다.- 다음도 참조하세요.
Functions
-
getPush
public push getPush(String serviceName)
푸시 알림 등록을 관리하기 위한Push
인스턴스를 반환합니다.- 매개변수:
serviceName
- 서버에 연결하는 데 사용되는 서비스 이름입니다.
-
getMongoClient
public MongoClient getMongoClient(문자열 serviceName)
데이터베이스의 문서에 액세스하기 위한MongoClient
인스턴스를 반환합니다.- 매개변수:
serviceName
- 서버에 연결하는 데 사용되는 서비스 이름입니다.
-
-