Provides HIVE SDK initialization and HIVE authentication functions
The HIVE SDK performs initialization based on the xml configuration file.
More...
Classes | |
class | HIVEProfileInfo |
User Profile Information playerID : User's unique ID playerName : The nickname of the user to be shown outside. More... | |
class | HIVEPlayerInfo |
Sign-in User Information it includes user's tocken and DID value along with ProfileInfo. More... | |
class | HIVEProviderInfo |
Identity Provider (IdP) Information It contains the UserId of the associated Identity Provider. More... | |
class | HIVEAuthV4MaintenanceInfo |
Server Maintenance and Update status display information title : Title message : Contents button : Text on the button ex) OK action : Actions to be taken when the button is pressed url : URL to be browsed when action is OPEN_URL remainingTime : When action is EXIT, the time in seconds remaining until the maintenance completes. More... | |
Typedefs | |
typedef void(^ | HIVEAuthV4SetupHandler) (HIVEResultAPI *result, BOOL isAutoSignIn, NSString *did, NSArray< NSNumber *> *providerTypeList) |
AuthV4 initialization result callback. More... | |
typedef void(^ | HIVEAuthV4SignInHandler) (HIVEResultAPI *result, HIVEPlayerInfo *playerInfo) |
AuthV4 Sign-in result callback. More... | |
typedef void(^ | HIVEAuthV4SignOutHandler) (HIVEResultAPI *result) |
AuthV4 Sign out result callback. More... | |
typedef void(^ | HIVEAuthV4ConnectHandler) (HIVEResultAPI *result, HIVEPlayerInfo *conflictPlayer) |
AuthV4 Provider connect result callback. More... | |
typedef void(^ | HIVEAuthV4DisconnectHandler) (HIVEResultAPI *result) |
AuthV4 Provider disconnect result callback It pass the disconnect status to the authentication server and then logout the requested provider. More... | |
typedef void(^ | HIVEAuthV4ResolveConflictHandler) (HIVEResultAPI *result) |
Result callback of resolveConflict(HIVEAuthV4ResolveConflictHandler) call AuthV4.resolveConflict() use it. More... | |
typedef void(^ | HIVEAuthV4GetProfileHandler) (HIVEResultAPI *result, NSArray< HIVEProfileInfo *> *profileInfoList) |
AuthV4 Profile information request result callback The profile information of the playerIds which are requested to the profile server is returned. More... | |
typedef void(^ | HIVEProviderFriendsCallback) (HIVEResultAPI *result, HIVEProviderType providerType, NSDictionary< NSString *, NSNumber *> *providerUserIdList) |
HIVE SDK Provider friend list request result callback. More... | |
typedef void(^ | HIVEAuthV4ShowProfileHandler) (HIVEResultAPI *result) |
AuthV4 Profile UI request result callback Invoked when the UI window is closed. More... | |
typedef void(^ | HIVEAuthV4ShowCafeHandler) (HIVEResultAPI *result) |
AuthV4 Cafe UI request result callback Invoked when the UI window is closed. More... | |
typedef void(^ | HIVEAuthV4ShowInquiryHandler) (HIVEResultAPI *result) |
AuthV4 1:1 Inquiry UI request result callback Invoked when the UI window is closed. More... | |
typedef void(^ | HIVEAuthV4ShowTermsHandler) (HIVEResultAPI *result) |
AuthV4 Terms of Service UI request result callback Invoked when the UI window is closed. More... | |
typedef void(^ | HIVEAuthV4AdultConfirmHandler) (HIVEResultAPI *result) |
AuthV4 Adult authentication request result callback Invoked when the UI window is closed. More... | |
typedef void(^ | HIVEAuthV4CheckProviderHandler) (HIVEResultAPI *result, HIVEProviderInfo *providerInfo) |
AuthV4 Provider status request result callback If the requested provider is not logged in, it tries to login. More... | |
typedef void(^ | HIVEAuthV4MaintenanceHandler) (HIVEResultAPI *result, NSArray< HIVEAuthV4MaintenanceInfo *> *maintenanceInfolist) |
AuthV4 Sever maintenance check request result callback Check whether the server is in the server maintenance with the ServerId set in Configuration. More... | |
typedef void(^ | HIVEAuthV4DialogDismissHandler) (BOOL isDismiss) |
AuthV4 Result callback after Game Center login pops up More... | |
Functions | |
typedef | NS_ENUM (NSUInteger, HIVEProviderType) |
Provider Types AUTO is for Automatic Login If the result of isAutoSignIn() call is true, You need to set parameter as AUTO when you call SignIn. More... | |
typedef | NS_ENUM (NSInteger, HIVEAuthV4MaintenanceActionType) |
Actions to be taken when a button is pressed on the maintenance popup. More... | |
(NSString *) | + HIVEProviderInfo::stringProviderType: |
Provider type으로 string 값을 얻어온다. More... | |
(HIVEProviderType) | + HIVEProviderInfo::providerTypeFromString: |
Provider string값으로 type을 얻어온다. More... | |
(void) | + HIVEAuthV4::setup: |
AuthV4 Perform initialization. More... | |
(void) | + HIVEAuthV4::signIn:handler: |
Requests signIn according to the given providerType. More... | |
(void) | + HIVEAuthV4::signOut: |
it remove the local session. More... | |
(void) | + HIVEAuthV4::connect:handler: |
It connects to the currently requested provider for the currently signed-in user. More... | |
(void) | + HIVEAuthV4::disconnect:handler: |
Releases the currently signed-in user from the requested provider. More... | |
(void) | + HIVEAuthV4::selectConflict:handler: |
When an account conflict (CONFLICT_PLAYER) occurs due to connect, it notify the selected user to the SDK. More... | |
(void) | + HIVEAuthV4::resolveConflict: |
It resolve the account conflicts(CONFLICT_PLAYER) caused by connect () call. More... | |
(BOOL) | + HIVEAuthV4::isAutoSignIn |
It returns whether signIn (AUTO) is enabled. More... | |
(HIVEPlayerInfo *) | + HIVEAuthV4::getPlayerInfo |
It returns information about the currently signed-in user. More... | |
(void) | + HIVEAuthV4::getProfile:handler: |
it returns the profile information of the requested playerIds. More... | |
(void) | + HIVEAuthV4::getProviderFriendsList:handler: |
It returns the playerId list information of the friends of the connected user corresponding to the input providerType. More... | |
(void) | + HIVEAuthV4::showSignIn: |
It shows the UI with a list of providers that can sign-in. More... | |
(void) | + HIVEAuthV4::showConflictSelection:conflictPlayerData:handler: |
It shows UI to select user in conflict state. More... | |
(void) | + HIVEAuthV4::showProfile:handler: |
It display the profile UI of the requested playerId. More... | |
(void) | + HIVEAuthV4::showCafe: |
It shows the HIVE Cafe UI. More... | |
(void) | + HIVEAuthV4::showInquiry: |
It shows the 1: 1 query UI. More... | |
(void) | + HIVEAuthV4::showTerms: |
It shows HIVE Terms and Conditions. More... | |
(void) | + HIVEAuthV4::showAdultConfirm: |
It request adult authentication. More... | |
(void) | + HIVEAuthV4::checkProvider:handler: |
It check the status of the requested Provider. More... | |
(void) | + HIVEAuthV4::checkMaintenance:handler: |
It display maintenance status and return its data. More... | |
(void) | + HIVEAuthV4::checkBlacklist:handler: |
it check the restriction status of the current user. More... | |
(void) | + HIVEAuthV4::setProviderChangedListener: |
It set a handler to be notified whether the information of the linked Provider has changed. More... | |
(void) | + HIVEAuthV4::reset |
It initialize all data used by the SDK, including authentication information. More... | |
(void) | + HIVEAuthV4::requestPermissionViewData: |
권한고지 팝업을 구성하기 위한 데이터를 얻습니다. More... | |
Provides HIVE SDK initialization and HIVE authentication functions
The HIVE SDK performs initialization based on the xml configuration file.
Provides HIVE SDK initialization and HIVE authentication functions
The HIVE SDK performs initialization based on the xml configuration file.
The detailed functions provided by this class are as follows.
typedef void(^ HIVEAuthV4AdultConfirmHandler) (HIVEResultAPI *result) |
AuthV4 Adult authentication request result callback Invoked when the UI window is closed.
result | : INVALID_SESSION can come if you do not have a sign-in because you need a sign-in. SUCCESS, if you have successfully completed the adult authentication |
typedef void(^ HIVEAuthV4CheckProviderHandler) (HIVEResultAPI *result, HIVEProviderInfo *providerInfo) |
AuthV4 Provider status request result callback If the requested provider is not logged in, it tries to login.
It does not request connect with the current playerId.
result | : SUCCESS means that the query was successful and you can determine whether the requested user is a logged-in user or not by whether providerInfo has a providerUserId. |
providerInfo | : 실제 provider 에 로그인 되어있다면 providerUserId 가 존재한다. 그 외 providerType 만 존재. |
typedef void(^ HIVEAuthV4ConnectHandler) (HIVEResultAPI *result, HIVEPlayerInfo *conflictPlayer) |
AuthV4 Provider connect result callback.
result | :If ProviderType is not supported (INVALID_PARAM) or if the Sign-in is in progress (IN_PROGRESS), it may fail. If sign-in fails, an INVALID_SESSION error is returned. An INVALID_PARAM error will occur if the provider is already connected. In this case, you must first call disconnect for the provider and then connect again. CONFLICT_PLAYER is returned if the provider attempting to connect is already connected to another playerId and the conflictPlayer object returned contains the corresponding conflict user information. |
conflictPlayer | : If result is CONFLICT_PLAYER, it contains information about the conflicting user. Only the information of the ProviderInfo that conflicted with playerId is included. playerToken is empty. |
typedef void(^ HIVEAuthV4DialogDismissHandler) (BOOL isDismiss) |
AuthV4 Result callback after Game Center login pops up
isDismiss | : Returns true if the popup is successfully closed. |
typedef void(^ HIVEAuthV4DisconnectHandler) (HIVEResultAPI *result) |
AuthV4 Provider disconnect result callback It pass the disconnect status to the authentication server and then logout the requested provider.
result | : It can fail if the delivery to the authentication server fails, if the Sign-in is in progress, if it is not setup, or if it is already a disconnected Provider. Otherwise, success. |
typedef void(^ HIVEAuthV4GetProfileHandler) (HIVEResultAPI *result, NSArray< HIVEProfileInfo * > *profileInfoList) |
AuthV4 Profile information request result callback The profile information of the playerIds which are requested to the profile server is returned.
result | : Results for request. In case of failure, profileInfoList is empty. |
profileInfoList | : Profile information for requested playerIds. Each profile has playerId, playerName, playerImageUrl. |
typedef void(^ HIVEAuthV4MaintenanceHandler) (HIVEResultAPI *result, NSArray< HIVEAuthV4MaintenanceInfo * > *maintenanceInfolist) |
AuthV4 Sever maintenance check request result callback Check whether the server is in the server maintenance with the ServerId set in Configuration.
If isShow is true on request, the maintenance popup is exposed and this callback will be called after the popup is closed.
result | : If the query to the server is successful, it will be SUCCESS. If it is SUCCESS but there is no notice of maintenance, maintenanceInfo will be empty. |
maintenanceInfolist | Maintenance popup information about the action that is exposed to the popup. If isShow is set to false on request, you must make and expose the UI directly by your self with this information. |
typedef void(^ HIVEAuthV4ResolveConflictHandler) (HIVEResultAPI *result) |
Result callback of resolveConflict(HIVEAuthV4ResolveConflictHandler) call AuthV4.resolveConflict() use it.
Logging out is not possible for IdPs that can not log out of the app. ex) Apple GameCenter
Therefore, even if the actual IDP logout fails, the internal conflict information is deleted .
typedef void(^ HIVEAuthV4SetupHandler) (HIVEResultAPI *result, BOOL isAutoSignIn, NSString *did, NSArray< NSNumber * > *providerTypeList) |
AuthV4 initialization result callback.
result | : When initial initialize is executed, it fails if it does not receive DID or Provider List. Otherwise, it is a success. |
isAutoSignIn | : Whether there is an old session left on local storage. If true, call SignIn (ProviderType.AUTO). Otherwise, you can request SignIn as one of providerTypeList. |
providerTypeList | : A provider list that can be signed in from the current device. And may be different depending on the current area (IP) of the device. GUEST is included, and in some areas or environments GUEST may not be possible. |
typedef void(^ HIVEAuthV4ShowCafeHandler) (HIVEResultAPI *result) |
AuthV4 Cafe UI request result callback Invoked when the UI window is closed.
result | : NEED_INITIALIZE can occur if 'setup' has not been called. Otherwise, success. |
typedef void(^ HIVEAuthV4ShowInquiryHandler) (HIVEResultAPI *result) |
AuthV4 1:1 Inquiry UI request result callback Invoked when the UI window is closed.
result | : NEED_INITIALIZE can occur if 'setup' has not been called. Otherwise, success. |
typedef void(^ HIVEAuthV4ShowProfileHandler) (HIVEResultAPI *result) |
AuthV4 Profile UI request result callback Invoked when the UI window is closed.
result | : If the entered playerId is not of the wrong type, it succeeds |
typedef void(^ HIVEAuthV4ShowTermsHandler) (HIVEResultAPI *result) |
AuthV4 Terms of Service UI request result callback Invoked when the UI window is closed.
result | : NEED_INITIALIZE can occur if 'setup' has not been called. Otherwise, success. |
typedef void(^ HIVEAuthV4SignInHandler) (HIVEResultAPI *result, HIVEPlayerInfo *playerInfo) |
AuthV4 Sign-in result callback.
result | : If it is not SUCCESS, you should return to the login screen again. If the session has expired or is not normal, INVALID_SESSION is returned, or CANCELED if the user cancels the external login window. NETWORK or TIMEOUT can be caused by delay of server response, and for other failures are RESPONSE_FAIL. |
playerInfo | : If result is SUCCESS, the playerInfo contains information about the user who successfully signed in. providerInfoData contains the information of the connected Provider. The missing Provider is not connected. |
typedef void(^ HIVEAuthV4SignOutHandler) (HIVEResultAPI *result) |
AuthV4 Sign out result callback.
*
result | : If setup fails (NEED_INITIALIZE) or SignIn or SignOut is in progress (IN_PROGRESS), it may fail. 그 외 성공 |
typedef void(^ HIVEProviderFriendsCallback) (HIVEResultAPI *result, HIVEProviderType providerType, NSDictionary< NSString *, NSNumber * > *providerUserIdList) |
HIVE SDK Provider friend list request result callback.
result | : Result of API. In case of failure, providerUserIdList is empty. |
providerType | : The ProviderType requested when calling the API. |
providerUserIdList | : The requested providerUserId list. |
+ (void) checkBlacklist: | (BOOL) | isShow | |
handler: | (HIVEAuthV4MaintenanceHandler) | handler | |
it check the restriction status of the current user.
It is automatically checked when signIn, connect is called and shows a restriction popup,
but you can use it when you need to check in realtime in the app.
On request, the UI is exposed when isShow is true
If the result is SUCCESS but there is no restriction notification, the maintenanceInfo of the handler will be empty.
If isShow is set to false on request, the UI should be configured and exposed by game developer with the maintenanceInfo information of the handler.
isShow | Whether to use the HIVE UI |
handler | HIVEAuthV4MaintenanceHandler |
+ (void) checkMaintenance: | (BOOL) | isShow | |
handler: | (HIVEAuthV4MaintenanceHandler) | handler | |
It display maintenance status and return its data.
It checks whether the server is in maintenance with the ServerId set in Configuration.
Once the SDK is initialized, you should check the status of the server maintenance and update.
Server maintenance and Update can block lower version after update of game client, or block game connection during maintenance time of game server.
HIVE provides a function to expose server maintenance or update pop-up according to the information set in the back office.
On request, a maintenance popup UI is exposed when isShow is true.
If the result is SUCCESS but there is no maintenance notification, the maintenanceInfo of the handler will be empty.
If isShow is set to false on request, the UI should be configured and exposed by game developer with the maintenanceInfo information of the handler.
handler | HIVEAuthV4MaintenanceHandler |
+ (void) checkProvider: | (HIVEProviderType) | providerType | |
handler: | (HIVEAuthV4CheckProviderHandler) | handler | |
It check the status of the requested Provider.
If the requested provider is not logged in, it tries to login.
If the login succeeds, it also brings providerUserId.
It does not request connect with the current playerId.
SUCCESS means that the query was successful and should determine whether or not the user is logged in with the presence of providerUserId in providerInfo.
If you are logged in to the actual provider, there is a providerUserId. Otherwise, only providerType exists.
When using the implicit sign-in : Google Play Games, Apple Game Center etc.
providerType | ProviderType to check status |
handler | HIVEAuthV4CheckProviderHandler |
+ (void) connect: | (HIVEProviderType) | providerType | |
handler: | (HIVEAuthV4ConnectHandler) | handler | |
It connects to the currently requested provider for the currently signed-in user.
After logging in with the requested provider, if it is successful, it sends an linking request to the authentication server.
If there is a playerId already linked to the UserId of the corresponding provider, a CONFLICT_PLAYER error is returned in the result of the handler.
In this case, you should configured an UI for account selection to the user with the conflict user information of the conflictPlayer object included in the handler.
When the user makes a selection, calls selectConflict () with the selected user information.
If you do not customize the UI, you can use showConflictSelection().
In this case, when the user selects it, it can proceed to selectConflict() and receive the result of the sign-in completed.
When the linking is completed, the corresponding state should be updated on the UI of the app.
In the case of BLACKLIST, SDK will show a restriction popup and issue a BLACKLIST error.
providerType | ProviderType to request connect. AUTO or GUEST causes an INVALID_PARAM error. |
handler | HIVEAuthV4ConnectHandler result :If ProviderType is not supported (INVALID_PARAM) or if the Sign-in is in progress (IN_PROGRESS), it may fail. If sign-in fails, an INVALID_SESSION error is returned. An INVALID_PARAM error will occur if the provider is already connected. In this case, you must first call disconnect for the provider and then connect again. CONFLICT_PLAYER is returned if the provider attempting to connect is already connected to another playerId and the conflictPlayer object returned contains the corresponding conflict user information. conflictPlayer : If result is CONFLICT_PLAYER, it contains information about the conflicting user. Only the information of the ProviderInfo that conflicted with playerId is included. playerToken is empty. |
+ (void) disconnect: | (HIVEProviderType) | providerType | |
handler: | (HIVEAuthV4DisconnectHandler) | handler | |
Releases the currently signed-in user from the requested provider.
It pass the disconnect status to the authentication server and then logout the requested provider.
If delivery fails to the authentication server, if the Sign or setup is in progress,
or if the provider is already disconnected, it may fail.
Note that if all account link are disconnected due to 'disconnect', it may become a guest state.
providerType | disconnect 요청할 ProviderType. |
handler | HIVEAuthV4DisconnectHandler result : If delivery fails to the authentication server, if the Sign or setup is in progress, or if the provider is already disconnected, it may fail. Otherwise, success. |
+ (HIVEPlayerInfo *) getPlayerInfo |
It returns information about the currently signed-in user.
PlayerInfo includes playerToken and profile information (playerName, playerImageUrl),
but it returns the locally cached profile information instead of requesting it to the server in real time upon request.
When getProfile or showProfile is called, it is automatically updated profile information if a signed-in user is it self.
+ (void) getProfile: | (NSArray<NSNumber *> *) | playerIdList | |
handler: | (HIVEAuthV4GetProfileHandler) | handler | |
it returns the profile information of the requested playerIds.
It update playerName and playerImageUrl when the playerId list contains the signed-in oneself.
playerIdList | ArrayList<Long> |
handler | HIVEAuthV4GetProfileHandler |
+ (void) getProviderFriendsList: | (HIVEProviderType) | providerType | |
handler: | (HIVEProviderFriendsCallback) | handler | |
It returns the playerId list information of the friends of the connected user corresponding to the input providerType.
It comes with a pair of information about the providerId of the requested providerType and the playerId of the associated user.
Up to 5000 people for kHIVEProviderTypeFACEBOOK.
You can query your friend's PlayerInfo using getProfile.
@
handler | HIVEProviderFriendsCallback |
+ (BOOL) isAutoSignIn |
It returns whether signIn (AUTO) is enabled.
It is the same value that you would get when you called setup(),
and it only checks for existing sessions that are stored locally, so you do not know if the session token is a valid token that the session has not been expired.
If true, then signIn (AUTO) should be called through UI such as 'TOUCH TO START',
and if signIn(AUTO) fails, it should return to the initial sign-in screen again.
If it is false, you can customize the UI through the providerList provided at setup() call
or use the UI provided by HIVE via showSignIn()
If you return to the sign-in scene such as signOut in the middle of your app, you can check whether you need to configure the UI through this API.
typedef NS_ENUM | ( | NSUInteger | , |
HIVEProviderType | |||
) |
Provider Types AUTO is for Automatic Login
If the result of isAutoSignIn() call is true, You need to set parameter as AUTO when you call SignIn.
< kHIVEProviderTypeGUEST 게스트
< kHIVEProviderTypeHIVE HIVE
< kHIVEProviderTypeFACEBOOK Facebook
< kHIVEProviderTypeGOOGLE Google
< kHIVEProviderTypeQQ QQ
< kHIVEProviderTypeWEIBO Weibo
< kHIVEProviderTypeVK VK
< kHIVEProviderTypeWECHAT WECHAT
< kHIVEProviderTypeAPPLE Apple
< kHIVEProviderTypeSIGNIN_APPLE SignInWithApple
< kHIVEProviderTypeAUTO Auto
typedef NS_ENUM | ( | NSInteger | , |
HIVEAuthV4MaintenanceActionType | |||
) |
Actions to be taken when a button is pressed on the maintenance popup.
OPEN_URL : Open URL passed to external browser
EXIT : Exit App
DONE : Close the popup without any action
< kHIVEAuthV4MaintenanceActionTypeOPEN_URL 외부 브라우저로 전달된 URL을 실행
< kHIVEAuthV4MaintenanceActionTypeEXIT 앱 강제 종료.
< kHIVEAuthV4MaintenanceActionTypeDONE 아무것도 하지 않음.
+ (HIVEProviderType) providerTypeFromString: | (NSString *) | typeString |
Provider string값으로 type을 얻어온다.
typeString | Provider string. |
+ (void) requestPermissionViewData: | ("Use Configration.getPermissionViewData") | __deprecated_msg |
권한고지 팝업을 구성하기 위한 데이터를 얻습니다.
HIVEResultAPI의 result가 success이며, result의 code가 kAuthV4SkipPermissionView 혹은 kAuthSkipPermissionView가 아닐 경우 권한고지 데이터를 이용하여 권한고지를 출력 할 수있습니다. HIVEPermissionViewData를 참조하여 데이터를 이용하여 UI를 구성하세요. 이 함수를 호출하여 권한고지팝업을 구성할 시 AuthV4.setup, Auth.initialize를 호출하였을때 HIVE SDK의 권한고지 팝업은 나오지 않습니다.
handler | 성인 인증 결과 통지 |
+ (void) reset |
It initialize all data used by the SDK, including authentication information.
It is used for HIVE SDK implementation and testing.
+ (void) resolveConflict: | (HIVEAuthV4ResolveConflictHandler) | handler |
It resolve the account conflicts(CONFLICT_PLAYER) caused by connect () call.
This is used when the customized UI is used in the account conflict state caused by connect() call.
It resolve the account conflicts(CONFLICT_PLAYER).
Upon calling, the corresponding IdP (Provider) is logged out.
For an Apple GameCenter (IDP) that can not log out of the app, you can not sign out,
and only delete internal conflict information.
handler | HIVEAuthV4ResolveConflictHandler Even if the actual IdP logout fails, the internal conflict information is deleted. |
+ (void) selectConflict: | (int64_t) | selectedPlayerId | |
handler: | (HIVEAuthV4SignInHandler) | handler | |
When an account conflict (CONFLICT_PLAYER) occurs due to connect, it notify the selected user to the SDK.
If you use your own customized UI for an account conflict situation (CONFLICT_PLAYER),
you need to call it to notify the selected user when user select one.
INVALID_PARAM can occur if the SDK state is not in a conflict state, signIn is in progress, or the wrong playerId.
Even if a conflict occurs, the existing user is considered to be signIn until selectConflict () is called then sign in.
You do not need to call it if you use showConflictSelection().
selectedPlayerId | PlayerId of the selected user |
handler | HIVEAuthV4SignInHandler Note: The existing user is a signined user, until SUCCESS. |
+ (void) setProviderChangedListener: | (HIVEAuthV4CheckProviderHandler) | handler |
It set a handler to be notified whether the information of the linked Provider has changed.
For Google Play Games and Apple Game Center, account information may be changed outside of the app.
That's why it checks to see if the user information has changed when the app resumes (onStart),
and if so, the callback is called.
Callbacks will work after checkProvider() or attempting to connect directly with connect().
If you implement implicit sign-in, you need to check directly with checkProvider () at the completion of signIn().
handler | HIVEAuthV4CheckProviderHandler |
+ (void) setup: | (HIVEAuthV4SetupHandler) | handler |
AuthV4 Perform initialization.
It should be called first among all the APIs except for the configuration area,
and if this is not called first, some API may cause a NEED_INITIALIZE error.
On Android, the permission request UI is exposed
Afterwards, consent to the Terms, download check, DID setting, config.xml setting, ProviderList setting and etc. are performed.
If the DID is not received on the first execution, or the provider list is not received, the result is sent to the handler as failure.
You need to configure the UI for signIn using the providerTypeList contained in handler.
If you do not implement the UI directly, use showSignIn().
When the setup of AuthV4 is called, the functions of the existing Auth and Social areas are disabled.
In the opposite case, when Auth is initialized, AuthV4 and Provider areas are disabled.
Required VID for other functional units (Push, Pomotion, IAP, etc.), you need to insert the playerId instead,if you set up with AuthV4.
handler | HIVEAuthV4SetupHandler AuthV4 Setup request result callback result : If the DID is not received or the provider list is not received, it fails. Otherwise, success. isAutoSignIn : Whether an old session remains local storage. If true, call SignIn (ProviderType.AUTO). Otherwise, you can request SignIn as one of providerTypeList. providerTypeList : A provider list that can be signed in at the current device. And may be different depending on the current area (IP) of the device. GUEST is included, and in some areas or environments GUEST may not be possible. |
+ (void) showAdultConfirm: | (HIVEAuthV4AdultConfirmHandler) | handler |
It request adult authentication.
For some games that require adult authentication, it provide adult authentication.
handler | HIVEAuthV4AdultConfirmHandler result : INVALID_SESSION can be given if it is not signed-in because it requires a sign-in. SUCCESS will be made if the adult is successfully certified. |
+ (void) showCafe: | (HIVEAuthV4ShowCafeHandler) | handler |
It shows the HIVE Cafe UI.
It can be used regardless of whether HIVE Membership is linked or not,
and if it is linked, My Cafes menu is added.
handler | HIVEAuthV4ShowCafeHandler |
+ (void) showConflictSelection: | (NSDictionary< NSString *, NSObject * > *) | currentPlayerData | |
conflictPlayerData: | (NSDictionary< NSString *, NSObject * > *) | conflictPlayerData | |
handler: | (HIVEAuthV4SignInHandler) | handler | |
It shows UI to select user in conflict state.
If a CONFLICT_PLAYER error occurs during connect() call, it shows the UI to display a user-selectable UI.
It should be called with information (nickname, level, etc.) that identifies the user corresponding to the conflicted playerId.
You should put the playerId in the "player_id" key in playerData.
For other information, add a value of type Map <String, Object> to the "game_data" key.
The keys name, "player_id" and "game_data" are required and should not be changed.
ex) {"player_id":123, "game_data":{"Name":"CurrentPlayer", "Level":52}}
If a conflicted user is selected, the game data corresponding to the user must be reloaded.
currentPlayerData | Information of the user who is currently signed in. |
conflictPlayerData | ConflictPlayer information received at connect() call. |
handler | HIVEAuthV4SignInHandler |
+ (void) showInquiry: | (HIVEAuthV4ShowInquiryHandler) | handler |
It shows the 1: 1 query UI.
It can be used regardless of whether HIVE Membership is linked or not,
If it is linked, the e-mail part is automatically filled in.
handler | HIVEAuthV4ShowInquiryHandler |
+ (void) showProfile: | (int64_t) | playerId | |
handler: | (HIVEAuthV4ShowProfileHandler) | handler | |
It display the profile UI of the requested playerId.
If the playerId is a sign-in user's one and the user is a member of HIVE Membership, the user can change the profile picture and nickname in this UI.
In this case, when the window is closed, the playerName and playerImageUrl are synchronized with the local information.
playerId | PlayerId to show the profile UI |
handler | HIVEAuthV4ShowProfileHandler |
+ (void) showSignIn: | (HIVEAuthV4SignInHandler) | handler |
It shows the UI with a list of providers that can sign-in.
It will show a UI with the same list of providers as the ProviderList you received from setup() call.
A GUEST button may not be exposed due to network delays.
AUTO is not supported. If isAutoSignIn () is true, call signIn(AUTO) immediately.
handler | HIVEAuthV4SignInHandler |
+ (void) showTerms: | (HIVEAuthV4ShowTermsHandler) | handler |
It shows HIVE Terms and Conditions.
It shows Terms and Conditions
At initialization of the SDK, the user will go through the agreement process.
After this, the game should be configured to expose the WebView os that user can check Privacy policy and Terms and Conditions in the game setting menu.
handler | HIVEAuthV4ShowTermsHandler API callback |
+ (void) signIn: | (HIVEProviderType) | providerType | |
handler: | (HIVEAuthV4SignInHandler) | handler | |
Requests signIn according to the given providerType.
If there is a locally stored session and it is not AUTO
or if there is no session stored locally and it is AUTO, it will cause INVALID_PARAM error.
You can also check whether it is AUTO or not with isAutoSignIn ().
IN_PROGRESS occurs when the sign-in is already in progress,
and the external authentication window can be exposed once again for ProviderType other than GUEST.
If signIn succeeds, you can get the user information through the playerInfo contained in the handler
and display the status of the linked provider in the UI
In the case of signIn (AUTO), since it is sign-in only with the session of the stored playerId,
you should call checkProvider () to check whether the provider performing the implicit login is also logged in the actual terminal and to synchronize the account.
If it is different, you can call signOut () and call signIn (Provider) to switch the account.
In the case of BLACKLIST, SDK will pop up a restriction popup and issue a BLACKLIST error.
providerType | ProviderType to request signIn |
handler | HIVEAuthV4SignInHandler AuthV4 signIn result callback |
+ (void) signOut: | (HIVEAuthV4SignOutHandler) | handler |
it remove the local session.
It logs out all the providers that are logged in, removes the local session and gives a success callback regardless of the result.
IN_PROGRESS may occur when signIn / Out is in progress
Note that in the case of a player in the guest state (no connected Provider), the player will not be able to sign in again.
handler | HIVEAuthV4SignOutHandler Sign-out result callback |
+ (NSString *) stringProviderType: | (HIVEProviderType) | providerType |
Provider type으로 string 값을 얻어온다.
providerType | Provider Type. |