diff --git a/en/release-notes-android.md b/en/release-notes-android.md
index 30d17817..4d9f733f 100644
--- a/en/release-notes-android.md
+++ b/en/release-notes-android.md
@@ -1,5 +1,13 @@
## Game > Gamebase > Release Notes > Android
+### 2.66.3 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Android.zip)
+
+#### 기능 개선/변경
+* 외부 SDK 업데이트: NHN Cloud SDK(1.9.2)
+ * Android 13 이상 특정 디바이스에서 간헐적으로 Native Crash 로그가 리포팅되지 않는 문제가 수정되었습니다.
+ * Amazon 결제 재처리가 개선되었습니다.
+
### 2.66.2 (2024. 08. 27.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.2/GamebaseSDK-Android.zip)
diff --git a/en/release-notes-unity.md b/en/release-notes-unity.md
index 40f085f9..198b9c75 100644
--- a/en/release-notes-unity.md
+++ b/en/release-notes-unity.md
@@ -1,5 +1,11 @@
## Game > Gamebase > Release Notes > Unity
+### 2.66.3 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Unity.zip)
+
+#### 기능 개선/변경
+* Unity 최소지원 버전 변경: 2020.3.0f1
+
### 2.66.3 (2024. 09. 05.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Unity.zip)
diff --git a/en/release-notes-unreal.md b/en/release-notes-unreal.md
index 7db90368..17ca9334 100644
--- a/en/release-notes-unreal.md
+++ b/en/release-notes-unreal.md
@@ -1,5 +1,15 @@
## Game > Gamebase > Release Notes > Unreal
+### 2.66.1 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.1/GamebaseSDK-Unreal.zip)
+
+#### 기능 개선
+* 내부 로직을 개선했습니다.
+
+#### 플랫폼별 변경 사항
+* [Gamebase Android SDK 2.66.3](./release-notes-android/#2663-2024-09-10)
+* [Gamebase iOS SDK 2.66.2](./release-notes-ios/#2662-2024-08-27)
+
### 2.66.0 (2024. 08. 27.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.0/GamebaseSDK-Unreal.zip)
diff --git a/en/unity-started.md b/en/unity-started.md
index bde730a2..c43f4281 100644
--- a/en/unity-started.md
+++ b/en/unity-started.md
@@ -9,7 +9,7 @@ This guide describes the environments and initial setting of Gamebase Unity SDK.
>
> Supported Unity versions
>
-> * 2018.4.0 ~ 6000.0.17
+> * 2020.3.0 ~ 6000.0.17
#### Android
> [Caution]
diff --git a/ja/release-notes-android.md b/ja/release-notes-android.md
index 9c98261a..e63552b8 100644
--- a/ja/release-notes-android.md
+++ b/ja/release-notes-android.md
@@ -1,5 +1,13 @@
## Game > Gamebase > リリースノート > Android
+### 2.66.3 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Android.zip)
+
+#### 기능 개선/변경
+* 외부 SDK 업데이트: NHN Cloud SDK(1.9.2)
+ * Android 13 이상 특정 디바이스에서 간헐적으로 Native Crash 로그가 리포팅되지 않는 문제가 수정되었습니다.
+ * Amazon 결제 재처리가 개선되었습니다.
+
### 2.66.2 (2024. 08. 27.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.2/GamebaseSDK-Android.zip)
diff --git a/ja/release-notes-unity.md b/ja/release-notes-unity.md
index d9f34c6d..8cf90e3f 100644
--- a/ja/release-notes-unity.md
+++ b/ja/release-notes-unity.md
@@ -1,5 +1,11 @@
## Game > Gamebase > リリースノート > Unity
+### 2.66.3 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Unity.zip)
+
+#### 기능 개선/변경
+* Unity 최소지원 버전 변경: 2020.3.0f1
+
### 2.66.3 (2024. 09. 05.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Unity.zip)
diff --git a/ja/release-notes-unreal.md b/ja/release-notes-unreal.md
index 6d61885d..c5722db3 100644
--- a/ja/release-notes-unreal.md
+++ b/ja/release-notes-unreal.md
@@ -1,5 +1,15 @@
## Game > Gamebase > リリースノート > Unreal
+### 2.66.1 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.1/GamebaseSDK-Unreal.zip)
+
+#### 기능 개선
+* 내부 로직을 개선했습니다.
+
+#### 플랫폼별 변경 사항
+* [Gamebase Android SDK 2.66.3](./release-notes-android/#2663-2024-09-10)
+* [Gamebase iOS SDK 2.66.2](./release-notes-ios/#2662-2024-08-27)
+
### 2.66.0 (2024. 08. 27.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.0/GamebaseSDK-Unreal.zip)
diff --git a/ja/unity-started.md b/ja/unity-started.md
index e9a4a9dc..5d82ac57 100644
--- a/ja/unity-started.md
+++ b/ja/unity-started.md
@@ -9,7 +9,7 @@ Gamebase Unity SDKの使用環境及び初期設定について説明します
>
> Unity対応バージョン
>
-> * 2018.4.0~6000.0.17
+> * 2020.3.0 ~ 6000.0.17
#### Android
> [注意]
diff --git a/ko/aos-started.md b/ko/aos-started.md
index fe318b40..1a99282f 100644
--- a/ko/aos-started.md
+++ b/ko/aos-started.md
@@ -14,7 +14,7 @@ Android에서 Gamebase를 사용하기 위한 시스템 환경은 다음과 같
| Gamebase SDK | Gamebase Adapter | External SDK | 용도 | minSdkVersion |
| --- | --- | --- | --- | --- |
-| Gamebase | gamebase-sdk | nhncloud-core-1.9.1
nhncloud-common
nhncloud-crash-reporter-ndk
nhncloud-logger
gson-2.8.9
okhttp-3.12.13
kotlin-stdlib-1.8.0
kotlin-stdlib-common
kotlin-stdlib-jdk7
kotlin-stdlib-jdk8
kotlin-android-extensions-runtime
kotlinx-coroutines-core-1.6.4
kotlinx-coroutines-android
kotlinx-coroutines-core-jvm | Gamebase의 인터페이스 및 핵심 로직을 포함 | API 19(Kitkat, OS 4.4) |
+| Gamebase | gamebase-sdk | nhncloud-core-1.9.2
nhncloud-common
nhncloud-crash-reporter-ndk
nhncloud-logger
gson-2.8.9
okhttp-3.12.13
kotlin-stdlib-1.8.0
kotlin-stdlib-common
kotlin-stdlib-jdk7
kotlin-stdlib-jdk8
kotlin-android-extensions-runtime
kotlinx-coroutines-core-1.6.4
kotlinx-coroutines-android
kotlinx-coroutines-core-jvm | Gamebase의 인터페이스 및 핵심 로직을 포함 | API 19(Kitkat, OS 4.4) |
| Gamebase Auth Adapters | gamebase-adapter-auth-appleid | - | Sign In With Apple 로그인을 지원 | - |
| | gamebase-adapter-auth-facebook | facebook-login-16.1.2 | Facebook 로그인을 지원 | - |
| | gamebase-adapter-auth-google | play-services-auth-20.3.0 | Google 로그인을 지원 | - |
diff --git a/ko/release-notes-android.md b/ko/release-notes-android.md
index 8179096c..6f1dbcc6 100644
--- a/ko/release-notes-android.md
+++ b/ko/release-notes-android.md
@@ -1,5 +1,13 @@
## Game > Gamebase > 릴리스 노트 > Android
+### 2.66.3 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Android.zip)
+
+#### 기능 개선/변경
+* 외부 SDK 업데이트: NHN Cloud SDK(1.9.2)
+ * Android 13 이상 특정 디바이스에서 간헐적으로 Native Crash 로그가 리포팅되지 않는 문제가 수정되었습니다.
+ * Amazon 결제 재처리가 개선되었습니다.
+
### 2.66.2 (2024. 08. 27.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.2/GamebaseSDK-Android.zip)
diff --git a/ko/release-notes-unity.md b/ko/release-notes-unity.md
index 06ee0185..3611e06d 100644
--- a/ko/release-notes-unity.md
+++ b/ko/release-notes-unity.md
@@ -1,5 +1,11 @@
## Game > Gamebase > 릴리스 노트 > Unity
+### 2.66.3 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Unity.zip)
+
+#### 기능 개선/변경
+* Unity 최소지원 버전 변경: 2020.3.0f1
+
### 2.66.3 (2024. 09. 05.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Unity.zip)
diff --git a/ko/release-notes-unreal.md b/ko/release-notes-unreal.md
index 5795f356..81a55f5c 100644
--- a/ko/release-notes-unreal.md
+++ b/ko/release-notes-unreal.md
@@ -1,5 +1,15 @@
## Game > Gamebase > 릴리스 노트 > Unreal
+### 2.66.1 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.1/GamebaseSDK-Unreal.zip)
+
+#### 기능 개선
+* 내부 로직을 개선했습니다.
+
+#### 플랫폼별 변경 사항
+* [Gamebase Android SDK 2.66.3](./release-notes-android/#2663-2024-09-10)
+* [Gamebase iOS SDK 2.66.2](./release-notes-ios/#2662-2024-08-27)
+
### 2.66.0 (2024. 08. 27.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.0/GamebaseSDK-Unreal.zip)
@@ -177,10 +187,10 @@
#### 기능 개선/변경
* 킥아웃 팝업 창 표시 여부는 Gamebase 콘솔에서 킥아웃 등록 시 설정할 수 있으므로 다음 필드는 더 이상 사용하지 않습니다
- * **FGamebaseConfiguration.enableKickoutPopup**
+ * **FGamebaseConfiguration.bEnableKickoutPopup**
* FGamebaseConfiguration 내 일부 필드에 기본값이 추가되었습니다.
- * enableLaunchingStatusPopup의 기본값이 true로 설정되었습니다.
- * enableBanPopup의 기본값이 true로 설정되었습니다.
+ * bEnableLaunchingStatusPopup의 기본값이 true로 설정되었습니다.
+ * bEnableBanPopup의 기본값이 true로 설정되었습니다.
* 웹뷰에서 고정 폰트 사이즈 사용 여부를 설정하는 필드는 더 이상 사용되지 않습니다.
* **FGamebaseWebViewConfiguration.enableFixedFontSize**
* FGamebaseWebViewConfiguratio 내 일부 필드에 기본값이 추가되었습니다.
diff --git a/ko/unity-started.md b/ko/unity-started.md
index 5d441ff3..fd501afb 100644
--- a/ko/unity-started.md
+++ b/ko/unity-started.md
@@ -9,7 +9,7 @@ Gamebase Unity SDK 사용 환경 및 초기 설정에 대해 설명합니다.
>
> Unity 지원 버전
>
-> * 2018.4.0 ~ 6000.0.17
+> * 2020.3.0 ~ 6000.0.17
#### Android
> [주의]
diff --git a/ko/unreal-authentication.md b/ko/unreal-authentication.md
index f5a8e654..42222ec4 100644
--- a/ko/unreal-authentication.md
+++ b/ko/unreal-authentication.md
@@ -38,7 +38,7 @@ Gamebase에서는 게스트 로그인을 기본으로 지원합니다.
* 이용 정지 게임 유저
* 오류 코드가 **BANNED_MEMBER(7)** 인 경우, 이용 정지 게임 유저이므로 인증에 실패한 것입니다.
* **FGamebaseBanInfo::From API**로 제재 정보를 확인하여 게임 유저에게 게임을 플레이할 수 없는 이유를 알려주시기 바랍니다.
- * Gamebase 초기화 시 **FGamebaseConfiguration.enablePopup** 및 **FGamebaseConfiguration.enableBanPopup**값을 true로 한다면 Gamebase가 이용 정지에 관한 팝업 창을 자동으로 띄웁니다.
+ * Gamebase 초기화 시 **FGamebaseConfiguration.bEnablePopup** 및 **FGamebaseConfiguration.bEnableBanPopup**값을 true로 한다면 Gamebase가 이용 정지에 관한 팝업 창을 자동으로 띄웁니다.
* 그 외 오류
* 이전 로그인 유형으로 인증에 실패했습니다. **'2. 지정된 IdP로 인증'**을 진행합니다.
@@ -46,7 +46,7 @@ Gamebase에서는 게스트 로그인을 기본으로 지원합니다.
* IdP 유형을 직접 지정하여 인증을 시도합니다.
* 인증 가능한 유형은 **GamebaseAuthProvider** 클래스에 선언돼 있습니다.
-* **Login(providerName, callback) API**를 호출합니다.
+* **Login(ProviderName, callback) API**를 호출합니다.
#### 2-1. 인증에 성공한 경우
@@ -56,11 +56,11 @@ Gamebase에서는 게스트 로그인을 기본으로 지원합니다.
#### 2-2. 인증에 실패한 경우
* 네트워크 오류
- * 오류 코드가 **SOCKET_ERROR(110)** 또는 **SOCKET_RESPONSE_TIMEOUT(101)**인 경우, 일시적인 네트워크 문제로 인증에 실패한 것이므로 **Login(providerName, callback) API**를 다시 호출하거나, 잠시 후 다시 시도합니다.
+ * 오류 코드가 **SOCKET_ERROR(110)** 또는 **SOCKET_RESPONSE_TIMEOUT(101)**인 경우, 일시적인 네트워크 문제로 인증에 실패한 것이므로 **Login(ProviderName, callback) API**를 다시 호출하거나, 잠시 후 다시 시도합니다.
* 이용 정지 게임 유저
* 오류 코드가 **BANNED_MEMBER(7)**인 경우, 이용 정지 게임 유저이므로 인증에 실패한 것입니다.
* **FGamebaseBanInfo::From API**로 제재 정보를 확인하여 게임 유저에게 게임을 플레이할 수 없는 이유를 알려 주시기 바랍니다.
- * Gamebase 초기화 시 **FGamebaseConfiguration.enablePopup** 및 **FGamebaseConfiguration.enableBanPopup**값을 **true**로 지정하면 Gamebase가 이용 정지에 관한 팝업 창을 자동으로 표시합니다.
+ * Gamebase 초기화 시 **FGamebaseConfiguration.bEnablePopup** 및 **FGamebaseConfiguration.bEnableBanPopup**값을 **true**로 지정하면 Gamebase가 이용 정지에 관한 팝업 창을 자동으로 표시합니다.
* 그 외의 오류
* 오류가 발생했다는 것을 게임 유저에게 알리고, 게임 유저가 인증 IdP 유형을 선택할 수 있는 상태(주로 타이틀 화면 또는 로그인 화면)로 되돌아갑니다.
@@ -74,7 +74,7 @@ Gamebase에서는 게스트 로그인을 기본으로 지원합니다.
| keyname | a use | 값 종류 |
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
-| GamebaseAuthProviderCredential.SHOW_LOADING_ANIMATION | API 호출이 끝날 때까지 로딩 애니메이션을 표시
**Android에 한함** | **bool**
**default**: true |
+| GamebaseAuthProviderCredential::ShowLoadingAnimation | API 호출이 끝날 때까지 로딩 애니메이션을 표시
**Android에 한함** | **bool**
**default**: true |
**API**
@@ -83,8 +83,8 @@ Gamebase에서는 게스트 로그인을 기본으로 지원합니다.
■ UNREAL_ANDROID
```cpp
-void LoginForLastLoggedInProvider(const FGamebaseAuthTokenDelegate& onCallback);
-void LoginForLastLoggedInProvider(const UGamebaseJsonObject& additionalInfo, const FGamebaseAuthTokenDelegate& onCallback);
+void LoginForLastLoggedInProvider(const FGamebaseAuthTokenDelegate& Callback);
+void LoginForLastLoggedInProvider(const UGamebaseJsonObject& AdditionalInfo, const FGamebaseAuthTokenDelegate& Callback);
```
**Example**
@@ -107,10 +107,10 @@ void USample::LoginForLastLoggedInProvider()
}
else if (Error->Code == GamebaseErrorCode::BANNED_MEMBER)
{
- auto banInfo = FGamebaseBanInfo::From(Error);
- if (banInfo.IsValid())
+ auto BanInfo = FGamebaseBanInfo::From(Error);
+ if (BanInfo.IsValid())
{
- UE_LOG(GamebaseTestResults, Display, TEXT("This user has been banned. Gamebase userId is %s"), *banInfo->UserId);
+ UE_LOG(GamebaseTestResults, Display, TEXT("This user has been banned. Gamebase userId is %s"), *BanInfo->UserId);
}
}
else
@@ -137,7 +137,7 @@ Gamebase는 게스트 로그인을 지원합니다.
■ UNREAL_WINDOWS
```cpp
-void Login(const FString& providerName, const FGamebaseAuthTokenDelegate& onCallback);
+void Login(const FString& ProviderName, const FGamebaseAuthTokenDelegate& Callback);
```
**Example**
@@ -162,10 +162,10 @@ void USample::Login()
}
else if (Error->Code == GamebaseErrorCode::BANNED_MEMBER)
{
- auto banInfo = FGamebaseBanInfo::From(Error);
- if (banInfo.IsValid())
+ auto BanInfo = FGamebaseBanInfo::From(Error);
+ if (BanInfo.IsValid())
{
- UE_LOG(GamebaseTestResults, Display, TEXT("This user has been banned. Gamebase userId is %s"), *banInfo->userId);
+ UE_LOG(GamebaseTestResults, Display, TEXT("This user has been banned. Gamebase userId is %s"), *BanInfo->userId);
}
}
}
@@ -181,16 +181,16 @@ void USample::Login()
> [참고]
>
> 로그인할 때 추가정보를 필요로 하는 IdP도 있습니다.
-> 이러한 추가 정보들을 설정할 수 있게 void Login(const FString& providerName, const UGamebaseJsonObject& additionalInfo, const FGamebaseAuthTokenDelegate& onCallback) API를 제공합니다.
->additionalInfo 파라미터에 필수 정보들을 dictionary 형태로 입력하시면 됩니다.
->additionalInfo 값이 있을 경우에는 해당 값을 사용하고 null 일 경우에는 [NHN Cloud Console](./oper-app/#authentication-information)에 등록된 값을 사용합니다.
+> 이러한 추가 정보들을 설정할 수 있게 void Login(const FString& ProviderName, const UGamebaseJsonObject& AdditionalInfo, const FGamebaseAuthTokenDelegate& Callback) API를 제공합니다.
+>AdditionalInfo 파라미터에 필수 정보들을 dictionary 형태로 입력하시면 됩니다.
+>AdditionalInfo 값이 있을 경우에는 해당 값을 사용하고 null 일 경우에는 [NHN Cloud Console](./oper-app/#authentication-information)에 등록된 값을 사용합니다.
> [참고]
>
> LINE IdP는 Gamebase SDK 2.43.0부터 LINE 서비스 제공 지역을 설정할 수 있습니다.
> 해당 지역은 AdditionalInfo에 설정할 수 있습니다.
-* additionalInfo 파라미터 설정 방법
+* AdditionalInfo 파라미터 설정 방법
| keyname | a use | 값 종류 |
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
@@ -205,8 +205,8 @@ void USample::Login()
■ UNREAL_WINDOWS
```cpp
-void Login(const FString& providerName, const FGamebaseAuthTokenDelegate& onCallback);
-void Login(const FString& providerName, const UGamebaseJsonObject& additionalInfo, const FGamebaseAuthTokenDelegate& onCallback);
+void Login(const FString& ProviderName, const FGamebaseAuthTokenDelegate& Callback);
+void Login(const FString& ProviderName, const UGamebaseJsonObject& AdditionalInfo, const FGamebaseAuthTokenDelegate& Callback);
```
**Example**
@@ -231,10 +231,10 @@ void USample::Login()
}
else if (Error->Code == GamebaseErrorCode::BANNED_MEMBER)
{
- auto banInfo = FGamebaseBanInfo::From(Error);
- if (banInfo.IsValid())
+ auto BanInfo = FGamebaseBanInfo::From(Error);
+ if (BanInfo.IsValid())
{
- UE_LOG(GamebaseTestResults, Display, TEXT("This user has been banned. Gamebase userId is %s"), *banInfo->UserId);
+ UE_LOG(GamebaseTestResults, Display, TEXT("This user has been banned. Gamebase userId is %s"), *BanInfo->UserId);
}
}
}
@@ -243,11 +243,11 @@ void USample::Login()
void USample::LoginWithAdditionalInfo()
{
- UGamebaseJsonObject* additionalInfo = NewObject();
- additionalInfo->SetStringField(TEXT("Key"), TEXT("Value"));
+ UGamebaseJsonObject* AdditionalInfo = NewObject();
+ AdditionalInfo->SetStringField(TEXT("Key"), TEXT("Value"));
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->Login(GamebaseAuthProvider::Facebook, *additionalInfo, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
+ Subsystem->Login(GamebaseAuthProvider::Facebook, *AdditionalInfo, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
{
if (Gamebase::IsSuccess(Error))
{
@@ -296,7 +296,7 @@ IdP에서 제공하는 SDK를 사용해 게임에서 직접 인증한 후 발급
■ UNREAL_WINDOWS
```cpp
-void Login(const UGamebaseJsonObject& credentialInfo, const FGamebaseAuthTokenDelegate& onCallback);
+void Login(const UGamebaseJsonObject& CredentialInfo, const FGamebaseAuthTokenDelegate& Callback);
```
**Example**
@@ -304,18 +304,18 @@ void Login(const UGamebaseJsonObject& credentialInfo, const FGamebaseAuthTokenDe
```cpp
void USample::LoginWithCredential()
{
- UGamebaseJsonObject* credentialInfo = NewObject();
+ UGamebaseJsonObject* CredentialInfo = NewObject();
// google
- //credentialInfo->SetStringField(GamebaseAuthProviderCredential::ProviderName, GamebaseAuthProvider::Google);
- //credentialInfo->SetStringField(GamebaseAuthProviderCredential::AuthorizationCode, TEXT("google auchorization code"));
+ //CredentialInfo->SetStringField(GamebaseAuthProviderCredential::ProviderName, GamebaseAuthProvider::Google);
+ //CredentialInfo->SetStringField(GamebaseAuthProviderCredential::AuthorizationCode, TEXT("google auchorization code"));
// facebook
- credentialInfo->SetStringField(GamebaseAuthProviderCredential::ProviderName, GamebaseAuthProvider::Facebook);
- credentialInfo->SetStringField(GamebaseAuthProviderCredential::AccessToken, TEXT("facebook access token"));
+ CredentialInfo->SetStringField(GamebaseAuthProviderCredential::ProviderName, GamebaseAuthProvider::Facebook);
+ CredentialInfo->SetStringField(GamebaseAuthProviderCredential::AccessToken, TEXT("facebook access token"));
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->Login(*credentialInfo, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
+ Subsystem->Login(*CredentialInfo, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
{
if (Gamebase::IsSuccess(Error))
{
@@ -344,7 +344,7 @@ void USample::LoginWithCredential()
■ UNREAL_WINDOWS
```cpp
-void Logout(const FGamebaseErrorDelegate& onCallback);
+void Logout(const FGamebaseErrorDelegate& Callback);
```
**Example**
@@ -392,7 +392,7 @@ void USample::Logout()
■ UNREAL_WINDOWS
```cpp
-void Withdraw(const FGamebaseErrorDelegate& onCallback);
+void Withdraw(const FGamebaseErrorDelegate& Callback);
```
**Example**
@@ -494,17 +494,17 @@ void USample::Withdraw()
■ UNREAL_ANDROID
```cpp
-void AddMapping(const FString& providerName, const FGamebaseAuthTokenDelegate& onCallback);
-void AddMapping(const FString& providerName, const UGamebaseJsonObject& additionalInfo, const FGamebaseAuthTokenDelegate& onCallback)
+void AddMapping(const FString& ProviderName, const FGamebaseAuthTokenDelegate& Callback);
+void AddMapping(const FString& ProviderName, const UGamebaseJsonObject& AdditionalInfo, const FGamebaseAuthTokenDelegate& Callback)
```
**Example**
```cpp
-void USample::AddMapping(const FString& providerName)
+void USample::AddMapping(const FString& ProviderName)
{
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->AddMapping(providerName, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
+ Subsystem->AddMapping(ProviderName, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
{
if (Gamebase::IsSuccess(Error))
{
@@ -549,7 +549,7 @@ void USample::AddMapping(const FString& providerName)
■ UNREAL_ANDROID
```cpp
-void AddMapping(const UGamebaseJsonObject& credentialInfo, const FGamebaseAuthTokenDelegate& onCallback);
+void AddMapping(const UGamebaseJsonObject& CredentialInfo, const FGamebaseAuthTokenDelegate& Callback);
```
**Example**
@@ -557,18 +557,18 @@ void AddMapping(const UGamebaseJsonObject& credentialInfo, const FGamebaseAuthTo
```cpp
void USample::AddMappingWithCredential()
{
- UGamebaseJsonObject* credentialInfo = NewObject();
+ UGamebaseJsonObject* CredentialInfo = NewObject();
// google
- //credentialInfo->SetStringField(GamebaseAuthProviderCredential::ProviderName, GamebaseAuthProvider::Google);
- //credentialInfo->SetStringField(GamebaseAuthProviderCredential::AuthorizationCode, TEXT("google auchorization code"));
+ //CredentialInfo->SetStringField(GamebaseAuthProviderCredential::ProviderName, GamebaseAuthProvider::Google);
+ //CredentialInfo->SetStringField(GamebaseAuthProviderCredential::AuthorizationCode, TEXT("google auchorization code"));
// facebook
- credentialInfo->SetStringField(GamebaseAuthProviderCredential::ProviderName, GamebaseAuthProvider::Facebook);
- credentialInfo->SetStringField(GamebaseAuthProviderCredential::AccessToken, TEXT("facebook access token"));
+ CredentialInfo->SetStringField(GamebaseAuthProviderCredential::ProviderName, GamebaseAuthProvider::Facebook);
+ CredentialInfo->SetStringField(GamebaseAuthProviderCredential::AccessToken, TEXT("facebook access token"));
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->AddMapping(*credentialInfo, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
+ Subsystem->AddMapping(*CredentialInfo, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
{
if (Gamebase::IsSuccess(Error))
{
@@ -592,21 +592,21 @@ void USample::AddMappingWithCredential()
**API**
```cpp
-void AddMappingForcibly(const FGamebaseForcingMappingTicket& forcingMappingTicket, const FGamebaseAuthTokenDelegate& onCallback);
+void AddMappingForcibly(const FGamebaseForcingMappingTicket& ForcingMappingTicket, const FGamebaseAuthTokenDelegate& Callback);
// Legacy API
-void AddMappingForcibly(const FString& providerName, const FString& forcingMappingKey, const FGamebaseAuthTokenDelegate& onCallback);
-void AddMappingForcibly(const FString& providerName, const FString& forcingMappingKey, const UGamebaseJsonObject& additionalInfo, const FGamebaseAuthTokenDelegate& onCallback);
-void AddMappingForcibly(const UGamebaseJsonObject& credentialInfo, const FString& forcingMappingKey, const FGamebaseAuthTokenDelegate& onCallback);
+void AddMappingForcibly(const FString& ProviderName, const FString& ForcingMappingKey, const FGamebaseAuthTokenDelegate& Callback);
+void AddMappingForcibly(const FString& ProviderName, const FString& ForcingMappingKey, const UGamebaseJsonObject& AdditionalInfo, const FGamebaseAuthTokenDelegate& Callback);
+void AddMappingForcibly(const UGamebaseJsonObject& CredentialInfo, const FString& ForcingMappingKey, const FGamebaseAuthTokenDelegate& Callback);
```
**Example**
```cpp
-void USample::AddMappingForcibly(const FString& providerName)
+void USample::AddMappingForcibly(const FString& ProviderName)
{
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->AddMapping(providerName, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
+ Subsystem->AddMapping(ProviderName, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
{
if (Gamebase::IsSuccess(Error))
{
@@ -618,14 +618,14 @@ void USample::AddMappingForcibly(const FString& providerName)
if (Error->Code == GamebaseErrorCode::AUTH_ADD_MAPPING_ALREADY_MAPPED_TO_OTHER_MEMBER)
{
// ForcingMappingTicket 클래스의 From() 메서드를 이용하여 ForcingMappingTicket 인스턴스를 얻습니다.
- auto forcingMappingTicket = FGamebaseForcingMappingTicket::From(Error);
- if (forcingMappingTicket.IsValid() == false)
+ auto ForcingMappingTicket = FGamebaseForcingMappingTicket::From(Error);
+ if (ForcingMappingTicket.IsValid() == false)
{
// Unexpected Error occurred. Contact Administrator.
}
// 강제 매핑을 시도합니다.
- Subsystem->AddMappingForcibly(forcingMappingTicket, forcingMappingTicket->forcingMappingKey,
+ Subsystem->AddMappingForcibly(ForcingMappingTicket, ForcingMappingTicket->ForcingMappingKey,
FGamebaseAuthTokenDelegate::CreateLambda([](const FGamebaseAuthToken* innerAuthToken, const FGamebaseError* innerError)
{
if (Gamebase::IsSuccess(Error))
@@ -660,7 +660,7 @@ Change Login API 호출이 실패하는 경우, Gamebase 로그인 상태는 기
**API**
```cs
-void ChangeLogin(const FGamebaseForcingMappingTicket& forcingMappingTicket, const FGamebaseAuthTokenDelegate& onCallback);
+void ChangeLogin(const FGamebaseForcingMappingTicket& ForcingMappingTicket, const FGamebaseAuthTokenDelegate& Callback);
```
**Example**
@@ -668,7 +668,7 @@ void ChangeLogin(const FGamebaseForcingMappingTicket& forcingMappingTicket, cons
다음은 Facebook으로 매핑 시도 후 Facebook에 이미 매핑된 계정이 존재하자, 해당 계정으로 로그인을 변경하는 예시입니다.
```cpp
-void USample::ChangeLoginWithFacebook(const FString& providerName)
+void USample::ChangeLoginWithFacebook(const FString& ProviderName)
{
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
Subsystem->AddMapping(GamebaseAuthProvider::Facebook, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
@@ -683,14 +683,14 @@ void USample::ChangeLoginWithFacebook(const FString& providerName)
if (Error->Code == GamebaseErrorCode::AUTH_ADD_MAPPING_ALREADY_MAPPED_TO_OTHER_MEMBER)
{
// ForcingMappingTicket 클래스의 From() 메서드를 이용하여 ForcingMappingTicket 인스턴스를 얻습니다.
- auto forcingMappingTicket = FGamebaseForcingMappingTicket::From(Error);
- if (forcingMappingTicket.IsValid())
+ auto ForcingMappingTicket = FGamebaseForcingMappingTicket::From(Error);
+ if (ForcingMappingTicket.IsValid())
{
// 강제 매핑을 시도합니다.
- Subsystem->ChangeLogin(forcingMappingTicket, forcingMappingTicket->ForcingMappingKey,
- FGamebaseAuthTokenDelegate::CreateLambda([](const FGamebaseAuthToken* authTokenForcibly, const FGamebaseError* innerError)
+ Subsystem->ChangeLogin(ForcingMappingTicket, ForcingMappingTicket->ForcingMappingKey,
+ FGamebaseAuthTokenDelegate::CreateLambda([](const FGamebaseAuthToken* AuthTokenForcibly, const FGamebaseError* ChangeLoginError)
{
- if (Gamebase::IsSuccess(Error))
+ if (Gamebase::IsSuccess(ChangeLoginError))
{
// 로그인 변경 성공
}
@@ -729,16 +729,16 @@ void USample::ChangeLoginWithFacebook(const FString& providerName)
■ UNREAL_ANDROID
```cpp
-void RemoveMapping(const FString& providerName, const FGamebaseErrorDelegate& onCallback);
+void RemoveMapping(const FString& ProviderName, const FGamebaseErrorDelegate& Callback);
```
**Example**
```cpp
-void USample::RemoveMapping(const FString& providerName)
+void USample::RemoveMapping(const FString& ProviderName)
{
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->RemoveMapping(providerName, FGamebaseErrorDelegate::CreateLambda([=](const FGamebaseError* Error)
+ Subsystem->RemoveMapping(ProviderName, FGamebaseErrorDelegate::CreateLambda([=](const FGamebaseError* Error)
{
if (Gamebase::IsSuccess(Error))
{
@@ -807,8 +807,8 @@ FString GetUserID() const;
```cpp
void USample::GetUserID()
{
- FString userID = UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->GetUserID();
+ UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
+ FString UserID = Subsystem->GetUserID();
}
```
@@ -831,8 +831,8 @@ FString GetAccessToken() const;
```cpp
void USample::GetAccessToken()
{
- FString accessToken = UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->GetAccessToken();
+ UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
+ FString AccessToken = Subsystem->GetAccessToken();
}
```
@@ -855,8 +855,8 @@ FString GetLastLoggedInProvider() const;
```cpp
void USample::GetLastLoggedInProvider()
{
- FString lastLoggedInProvider = UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->GetLastLoggedInProvider();
+ UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
+ FString LastLoggedInProvider = Subsystem->GetLastLoggedInProvider();
}
```
@@ -897,7 +897,7 @@ Gamebase Console에 제재된 게임 유저로 등록될 경우, 로그인을
**API**
```cpp
-void IssueTransferAccount(const FGamebaseTransferAccountDelegate& onCallback);
+void IssueTransferAccount(const FGamebaseTransferAccountDelegate& Callback);
```
**Example**
@@ -906,7 +906,7 @@ void IssueTransferAccount(const FGamebaseTransferAccountDelegate& onCallback);
void USample::IssueTransferAccount()
{
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->IssueTransferAccount(FGamebaseTransferAccountDelegate::CreateLambda([=](const FGamebaseTransferAccountInfo* transferAccountInfo, const FGamebaseError* Error)
+ Subsystem->IssueTransferAccount(FGamebaseTransferAccountDelegate::CreateLambda([=](const FGamebaseTransferAccountInfo* TransferAccountInfo, const FGamebaseError* Error)
{
if (Gamebase::IsSuccess(Error))
{
@@ -926,7 +926,7 @@ void USample::IssueTransferAccount()
**API**
```cpp
-void QueryTransferAccount(const FGamebaseTransferAccountDelegate& onCallback);
+void QueryTransferAccount(const FGamebaseTransferAccountDelegate& Callback);
```
**Example**
@@ -935,7 +935,7 @@ void QueryTransferAccount(const FGamebaseTransferAccountDelegate& onCallback);
void USample::QueryTransferAccount()
{
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->IssueTransferAccount(FGamebaseTransferAccountDelegate::CreateLambda([=](const FGamebaseTransferAccountInfo* transferAccountInfo, const FGamebaseError* Error)
+ Subsystem->IssueTransferAccount(FGamebaseTransferAccountDelegate::CreateLambda([=](const FGamebaseTransferAccountInfo* TransferAccountInfo, const FGamebaseError* Error)
{
if (Gamebase::IsSuccess(Error))
{
@@ -955,23 +955,25 @@ void USample::QueryTransferAccount()
TransferAccountInfo 정보를 갱신할 수 있습니다.
```cpp
-void RenewTransferAccount(const FGamebaseTransferAccountRenewConfiguration& configuration, const FGamebaseTransferAccountDelegate& onCallback);
+void RenewTransferAccount(const FGamebaseTransferAccountRenewConfiguration& Configuration, const FGamebaseTransferAccountDelegate& Callback);
```
**Example**
```cpp
-void USample::RenewTransferAccount(const FString& accountId, const FString& accountPassword)
+void USample::RenewTransferAccount(const FString& AccountId, const FString& AccountPassword)
{
// 수동 설정
- FGamebaseTransferAccountRenewConfiguration configuration{ accountId, accountPassword };
- //FGamebaseTransferAccountRenewConfiguration configuration{ accountPassword };
+ FGamebaseTransferAccountRenewConfiguration Configuration;
+ Configuration.AccountId = AccountId;
+ Configuration.AccountPassword = AccountPassword;
+ //FGamebaseTransferAccountRenewConfiguration Configuration { AccountPassword };
// 자동 설정
- //FGamebaseTransferAccountRenewConfiguration configuration{ type };
+ //FGamebaseTransferAccountRenewConfiguration Configuration{ type };
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->RenewTransferAccount(configuration, FGamebaseTransferAccountDelegate::CreateLambda([=](const FGamebaseTransferAccountInfo* transferAccountInfo, const FGamebaseError* Error)
+ Subsystem->RenewTransferAccount(Configuration, FGamebaseTransferAccountDelegate::CreateLambda([=](const FGamebaseTransferAccountInfo* TransferAccountInfo, const FGamebaseError* Error)
{
if (Gamebase::IsSuccess(Error))
{
@@ -997,16 +999,16 @@ void USample::RenewTransferAccount(const FString& accountId, const FString& acco
**API**
```cpp
-void TransferAccountWithIdPLogin(const FString& accountId, const FString& accountPassword, const FGamebaseAuthTokenDelegate& onCallback);
+void TransferAccountWithIdPLogin(const FString& AccountId, const FString& AccountPassword, const FGamebaseAuthTokenDelegate& Callback);
```
**Example**
```cpp
-void USample::TransferAccountWithIdPLogin(const FString& accountId, const FString& accountPassword)
+void USample::TransferAccountWithIdPLogin(const FString& AccountId, const FString& AccountPassword)
{
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->TransferAccountWithIdPLogin(accountId, accountPassword, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
+ Subsystem->TransferAccountWithIdPLogin(AccountId, AccountPassword, FGamebaseAuthTokenDelegate::CreateLambda([=](const FGamebaseAuthToken* AuthToken, const FGamebaseError* Error)
{
if (Gamebase::IsSuccess(Error))
{
@@ -1043,7 +1045,7 @@ void USample::TransferAccountWithIdPLogin(const FString& accountId, const FStrin
**API**
```cpp
-void RequestWithdrawal(const FGamebaseTemporaryWithdrawalDelegate& onCallback);
+void RequestWithdrawal(const FGamebaseTemporaryWithdrawalDelegate& Callback);
```
**Example**
@@ -1052,11 +1054,11 @@ void RequestWithdrawal(const FGamebaseTemporaryWithdrawalDelegate& onCallback);
void USample::RequestWithdrawal()
{
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->GetTemporaryWithdrawal()->RequestWithdrawal(FGamebaseTemporaryWithdrawalDelegate::CreateLambda([=](const FGamebaseTemporaryWithdrawalInfo* info, const FGamebaseError* Error)
+ Subsystem->GetTemporaryWithdrawal()->RequestWithdrawal(FGamebaseTemporaryWithdrawalDelegate::CreateLambda([=](const FGamebaseTemporaryWithdrawalInfo* Info, const FGamebaseError* Error)
{
if (Gamebase::IsSuccess(Error))
{
- UE_LOG(GamebaseTestResults, Display, TEXT("RequestWithdrawal succeeded. The date when you can withdraw your withdrawal is %d"), info->gracePeriodDate);
+ UE_LOG(GamebaseTestResults, Display, TEXT("RequestWithdrawal succeeded. The date when you can withdraw your withdrawal is %d"), Info->GracePeriodDate);
}
else
{
@@ -1080,11 +1082,11 @@ void USample::Login()
{
if (Gamebase::IsSuccess(Error))
{
- if (AuthToken->member.temporaryWithdrawal.IsSet())
+ if (AuthToken->Member.TemporaryWithdrawal.IsSet())
{
- const auto temporaryWithdrawal = AuthToken->member.temporaryWithdrawal.GetValue();
- // gracePeriodDate: epoch time in milliseconds
- const FDateTime PeriodDate = FDateTime(1970, 1, 1) + FTimespan::FromMilliseconds(temporaryWithdrawal.gracePeriodDate);
+ const auto TemporaryWithdrawal = AuthToken->Member.TemporaryWithdrawal.GetValue();
+ // GracePeriodDate: epoch time in milliseconds
+ const FDateTime PeriodDate = FDateTime(1970, 1, 1) + FTimespan::FromMilliseconds(TemporaryWithdrawal.GracePeriodDate);
UE_LOG(GamebaseTestResults, Display, TEXT("User is under temporary withdrawa. GracePeriodDate : %s"), *PeriodDate.ToString());
}
else
@@ -1108,7 +1110,7 @@ void USample::Login()
**API**
```cpp
-void CancelWithdrawal(const FGamebaseErrorDelegate& onCallback);
+void CancelWithdrawal(const FGamebaseErrorDelegate& Callback);
```
**Example**
@@ -1140,7 +1142,7 @@ void USample::CancelTemporaryWithdrawal()
**API**
```cpp
-void WithdrawImmediately(const FGamebaseErrorDelegate& onCallback);
+void WithdrawImmediately(const FGamebaseErrorDelegate& Callback);
```
**Example**
@@ -1186,28 +1188,28 @@ void USample::Login()
return;
}
- if (AuthToken->member.graceBan.IsSet())
+ if (AuthToken->Member.GraceBan.IsSet())
{
- const auto graceBan = AuthToken->Member.raceBan.GetValue();
+ const auto GraceBan = AuthToken->Member.raceBan.GetValue();
- // gracePeriodDate: epoch time in milliseconds
- const FDateTime PeriodDate = FDateTime(1970, 1, 1) + FTimespan::FromMilliseconds(graceBan.GracePeriodDate);
+ // GracePeriodDate: epoch time in milliseconds
+ const FDateTime PeriodDate = FDateTime(1970, 1, 1) + FTimespan::FromMilliseconds(GraceBan.GracePeriodDate);
- if (graceBan.releaseRuleCondition.IsSet())
+ if (GraceBan.ReleaseRuleCondition.IsSet())
{
- const auto releaseRuleCondition = graceBan.ReleaseRuleCondition.GetValue();
+ const auto ReleaseRuleCondition = GraceBan.ReleaseRuleCondition.GetValue();
// condition type: "AND", "OR"
- FString releaseRule = FString::Printf(TEXT("%lld%s %s %dtime(s)"), releaseRuleCondition.Amount,
- *releaseRuleCondition.Currency, *releaseRuleCondition.ConditionType, releaseRuleCondition.Count);
+ FString releaseRule = FString::Printf(TEXT("%lld%s %s %dtime(s)"), ReleaseRuleCondition.Amount,
+ *ReleaseRuleCondition.Currency, *ReleaseRuleCondition.ConditionType, ReleaseRuleCondition.Count);
}
- if (graceBan.PaymentStatus.IsSet())
+ if (GraceBan.PaymentStatus.IsSet())
{
- const auto paymentStatus = graceBan.PaymentStatus.GetValue();
+ const auto paymentStatus = GraceBan.PaymentStatus.GetValue();
- FString paidAmount = FString::Printf(TEXT("%lld%s"), paymentStatus.Amount, *paymentStatus.Currency);
- FString paidCount = paymentStatus.count + "time(s)";
+ FString paidAmount = FString::Printf(TEXT("%lld%s"), PaymentStatus.Amount, *PaymentStatus.Currency);
+ FString paidCount = PaymentStatus.count + "time(s)";
}
}
else
diff --git a/ko/unreal-etc.md b/ko/unreal-etc.md
index 64fa9960..77b56c5b 100644
--- a/ko/unreal-etc.md
+++ b/ko/unreal-etc.md
@@ -93,7 +93,7 @@ Supported Platforms
■ UNREAL_ANDROID
```cpp
-void Initialize(const FGamebaseConfiguration& Configuration, const FGamebaseLaunchingInfoDelegate& onCallback);
+void Initialize(const FGamebaseConfiguration& Configuration, const FGamebaseLaunchingInfoDelegate& Callback);
```
**Example**
@@ -258,7 +258,7 @@ Supported Platforms
■ UNREAL_WINDOWS
```cs
-FDelegateHandle AddHandler(const FGamebaseEventDelegate::FDelegate& onCallback);
+FDelegateHandle AddHandler(const FGamebaseEventDelegate::FDelegate& Callback);
void RemoveHandler(const FDelegateHandle& handle);
void RemoveAllHandler();
```
@@ -297,23 +297,23 @@ void USample::AddEventHandler()
Message.Category.Equals(GamebaseEventCategory::ServerPushAppKickOutMessageReceived) ||
Message.Category.Equals(GamebaseEventCategory::ServerPushTransferKickout))
{
- auto serverPushData = FGamebaseEventServerPushData::From(Message.Data);
+ auto ServerPushData = FGamebaseEventServerPushData::From(Message.Data);
}
else if (Message.Category.Equals(GamebaseEventCategory::ObserverLaunching))
{
- auto observerData = FGamebaseEventObserverData::From(Message.Data);
+ auto ObserverData = FGamebaseEventObserverData::From(Message.Data);
}
else if (Message.Category.Equals(GamebaseEventCategory::ObserverNetwork))
{
- auto observerData = FGamebaseEventObserverData::From(Message.Data);
+ auto ObserverData = FGamebaseEventObserverData::From(Message.Data);
}
else if (Message.Category.Equals(GamebaseEventCategory::ObserverHeartbeat))
{
- auto observerData = FGamebaseEventObserverData::From(Message.Data);
+ auto ObserverData = FGamebaseEventObserverData::From(Message.Data);
}
else if (Message.Category.Equals(GamebaseEventCategory::PurchaseUpdated))
{
- auto purchasableReceipt = FGamebaseEventPurchasableReceipt::From(Message.Data);
+ auto PurchasableReceipt = FGamebaseEventPurchasableReceipt::From(Message.Data);
}
else if (Message.Category.Equals(GamebaseEventCategory::PushReceivedMessage))
{
@@ -553,13 +553,13 @@ void USample::CheckServerPush(const FString& Category, const FGamebaseEventServe
struct GAMEBASE_API FGamebaseEventObserverData
{
// 상태값을 나타내는 정보입니다.
- int32 code;
+ int32 Code;
// 추가 정보용 예비 필드입니다.
FString Message;
// 상태에 관련된 메시지 정보입니다.
- FString extras;
+ FString Extras;
}
```
@@ -864,7 +864,7 @@ void USample::SetGameUserData(int32 UserLevel, const FString& ChannelId, const F
GameUserData.CharacterClassId = CharacterClassId;
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->GetAnalytics().SetGameUserData(GameUserData);
+ Subsystem->GetAnalytics()->SetGameUserData(GameUserData);
}
```
@@ -900,7 +900,7 @@ void USample::TraceLevelUpNow(int32 UserLevel)
{
FGamebaseAnalyticesLevelUpData levelUpData{ UserLevel, FDateTime::Now().ToUnixTimestamp() };
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->GetAnalytics().TraceLevelUp(levelUpData);
+ Subsystem->GetAnalytics()->TraceLevelUp(levelUpData);
}
```
@@ -1025,8 +1025,8 @@ void USample::OpenContact()
**API**
```cs
-void RequestContactURL(const FGamebaseContactUrlDelegate& onCallback);
-void RequestContactURL(const FGamebaseContactConfiguration& Configuration, const FGamebaseContactUrlDelegate& onCallback);
+void RequestContactURL(const FGamebaseContactUrlDelegate& Callback);
+void RequestContactURL(const FGamebaseContactConfiguration& Configuration, const FGamebaseContactUrlDelegate& Callback);
```
**ErrorCode**
diff --git a/ko/unreal-initialization.md b/ko/unreal-initialization.md
index 3082a070..ee1e8552 100644
--- a/ko/unreal-initialization.md
+++ b/ko/unreal-initialization.md
@@ -8,7 +8,7 @@ Gamebase Unreal SDK를 사용하려면 먼저 초기화를 진행해야 합니
Gamebase API를 사용하기 위해서는 다음의 헤더 파일을 가져옵니다.
```cpp
-#include "Gamebase.h"
+#include "GamebaseSubsystem.h"
```
### FGamebaseConfiguration
@@ -17,45 +17,42 @@ Gamebase API를 사용하기 위해서는 다음의 헤더 파일을 가져옵
| Setting value | Supported Platform | Mandatory(M) / Optional(O) |
| -------------------------- | ------------------ | -------------------------- |
-| AppID | ALL | M |
+| AppID | ALL | M |
| AppVersion | ALL | M |
| StoreCode | ALL | M |
-| DisplayLanguageCode | ALL | O |
| bEnablePopup | ALL | O |
| bEnableLaunchingStatusPopup | ALL | O |
| bEnableBanPopup | ALL | O |
-#### 1. App ID
+#### 1. AppID
Gamebase Console에 등록된 프로젝트 ID입니다.
[Game > Gamebase > 콘솔 사용 가이드 > 앱 > App](./oper-app/#app)
-#### 2. appVersion
+#### 2. AppVersion
Gamebase Console에 등록한 클라이언트 버전입니다.
[Game > Gamebase > 콘솔 사용 가이드 > 앱 > Client](./oper-app/#client)
-#### 3. storeCode
+#### 3. StoreCode
NHN Cloud 통합 인앱 결제 서비스인 IAP(In-App Purchase)를 초기화하기 위해 필요한 스토어 정보입니다.
-| Store | Code | Description |
-| ----------- | ---- | ------------ |
-| App Store | AS | iOS에 한함 |
-| Google Play | GG | Android에 한함 |
-| One Store | ONESTORE | Android에 한함 |
-| Galaxy Store | GALAXY | Android에 한함 |
+| Store | Code | GamebaseStoreCode | Description |
+| ----------- | ---- | ------------ | ------------ |
+| App Store | AS | GamebaseStoreCode::AppStore | iOS에 한함 |
+| Google Play | GG | GamebaseStoreCode::Google | Android에 한함 |
+| One Store | ONESTORE | GamebaseStoreCode::OneStore | Android에 한함 |
+| Galaxy Store | GALAXY | GamebaseStoreCode::Galaxy | Android에 한함 |
+| Amazon Appstore | AMAZON | GamebaseStoreCode::Amazon | Android에 한함 |
+| Huawei AppGallery | HUAWEI | GamebaseStoreCode::Huawei | Android에 한함 |
+| MyCard | MYCARD | GamebaseStoreCode::MyCard | Android에 한함 |
+| Epic Store | EPIC | GamebaseStoreCode::Epic | Windows에 한함 |
-#### 4. displayLanguageCode
-
-Gamebase에서 제공하는 UI 및 SystemDialog에 표시되는 언어를 단말기에 설정된 언어가 아닌 다른 언어로 변경할 수 있습니다.
-
-[Game > Gamebase > Unreal SDK 사용 가이드 > ETC > Additional Features > Display Language](./unreal-etc/#display-language)
-
-#### 5. enablePopup
+#### 4. bEnablePopup
시스템 점검, 이용 제재(ban) 등 게임 유저가 게임을 플레이할 수 없는 상황에서 팝업 창 등으로 사유를 표시해야 할 때가 있습니다.
Gamebase에서 제공하는 기본 팝업 창을 사용할 것인지에 대한 설정입니다.
@@ -64,14 +61,14 @@ Gamebase에서 제공하는 기본 팝업 창을 사용할 것인지에 대한
* false: Gamebase에서 제공하는 모든 팝업 창이 노출되지 않습니다.
* 기본값: false
-#### 6. enableLaunchingStatusPopup
+#### 5. bEnableLaunchingStatusPopup
LaunchingStatus가 게임을 할 수 없는 상태일 경우, Gamebase에서 제공하는 기본 팝업 창을 사용할 것인지에 대한 설정입니다.
LaunchingStatus는 아래 Launching 절 아래 State, Code 부분을 참고하십시오.
* 기본값: true
-#### 7. enableBanPopup
+#### 6. bEnableBanPopup
로그인 시 해당 게임 유저가 이용 정지 상태인 경우, Gamebase에서 제공하는 기본 팝업 창을 사용할 것인지에 대한 설정입니다.
@@ -100,16 +97,16 @@ Supported Platforms
■ UNREAL_WINDOWS
```cpp
-void SetDebugMode(bool isDebugMode);
+void SetDebugMode(bool bIsDebugMode);
```
**Example**
```cpp
-void USample::SetDebugMode(bool isDebugMode)
+void USample::SetDebugMode(bool bIsDebugMode)
{
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->SetDebugMode(isDebugMode);
+ Subsystem->SetDebugMode(bIsDebugMode);
}
```
diff --git a/ko/unreal-purchase.md b/ko/unreal-purchase.md
index 5f0c28d3..77688836 100644
--- a/ko/unreal-purchase.md
+++ b/ko/unreal-purchase.md
@@ -135,8 +135,8 @@ void USample::RequestPurchaseWithPayload(const FString& GamebaseProductId)
if (Gamebase::IsSuccess(Error))
{
UE_LOG(GamebaseTestResults, Display, TEXT("RequestPurchase succeeded. (GamebaseProductId= %s, price= %f, currency= %s, paymentSeq= %s, purchaseToken= %s)"),
- *PurchasableReceipt->GamebaseProductId, PurchasableReceipt->price, *PurchasableReceipt->currency,
- *PurchasableReceipt->paymentSeq, *PurchasableReceipt->purchaseToken);
+ *PurchasableReceipt->GamebaseProductId, PurchasableReceipt->price, *PurchasableReceipt->Currency,
+ *PurchasableReceipt->PaymentSeq, *PurchasableReceipt->PurchaseToken);
FString payload = PurchasableReceipt->payload;
}
diff --git a/ko/unreal-ui.md b/ko/unreal-ui.md
index 349523bb..68f9b227 100644
--- a/ko/unreal-ui.md
+++ b/ko/unreal-ui.md
@@ -18,8 +18,8 @@ Supported Platforms
■ UNREAL_WINDOWS
```cpp
-void ShowImageNotices(FGamebaseImageNoticeConfiguration& Configuration, const FGamebaseErrorDelegate& onCloseCallback);
-void ShowImageNotices(FGamebaseImageNoticeConfiguration& Configuration, const FGamebaseErrorDelegate& onCloseCallback, const FGamebaseImageNoticeEventDelegate& onEventCallback);
+void ShowImageNotices(FGamebaseImageNoticeConfiguration& Configuration, const FGamebaseErrorDelegate& CloseCallback);
+void ShowImageNotices(FGamebaseImageNoticeConfiguration& Configuration, const FGamebaseErrorDelegate& CloseCallback, const FGamebaseImageNoticeEventDelegate& EventCallback);
```
**Example**
@@ -116,8 +116,8 @@ Supported Platforms
■ UNREAL_ANDROID
```cpp
-void ShowTermsView(const FGamebaseDataContainerDelegate& onCallback);
-void ShowTermsView(const FGamebaseTermsConfiguration& Configuration, const FGamebaseDataContainerDelegate& onCallback);
+void ShowTermsView(const FGamebaseDataContainerDelegate& Callback);
+void ShowTermsView(const FGamebaseTermsConfiguration& Configuration, const FGamebaseDataContainerDelegate& Callback);
```
**ErrorCode**
@@ -288,7 +288,7 @@ Supported Platforms
■ UNREAL_WINDOWS
```cpp
-void UpdateTerms(const FGamebaseUpdateTermsConfiguration& Configuration, const FGamebaseErrorDelegate onCallback);
+void UpdateTerms(const FGamebaseUpdateTermsConfiguration& Configuration, const FGamebaseErrorDelegate Callback);
```
**ErrorCode**
@@ -355,8 +355,8 @@ bool IsShowingTermsView();
```cpp
void USample::IsShowingTermsView()
{
- bool isShowingTermsView = UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
- Subsystem->GetTerms()->IsShowingTermsView();
+ UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem(GetGameInstance());
+ bool isShowingTermsView = Subsystem->GetTerms()->IsShowingTermsView();
UE_LOG(GamebaseTestResults, Display, TEXT("IsShowingTermsView : %s"), isShowingTermsView ? TEXT("true") : TEXT("false"));
}
```
@@ -384,7 +384,7 @@ Supported Platforms
■ UNREAL_WINDOWS
```cpp
-void ShowWebView(const FString& Url, const FGamebaseWebViewConfiguration& Configuration, FGamebaseErrorDelegate& onCloseCallback, const TArray& SchemeList, const FGamebaseSchemeEventDelegate& onSchemeEvent);
+void ShowWebView(const FString& Url, const FGamebaseWebViewConfiguration& Configuration, FGamebaseErrorDelegate& CloseCallback, const TArray& SchemeList, const FGamebaseSchemeEventDelegate& onSchemeEvent);
```
**Example**
@@ -516,7 +516,7 @@ Supported Platforms
```cpp
void ShowAlert(const FString& Title, const FString& Message);
-void ShowAlert(const FString& Title, const FString& Message, const FGamebaseAlertCloseDelegate& onCloseCallback);
+void ShowAlert(const FString& Title, const FString& Message, const FGamebaseAlertCloseDelegate& CloseCallback);
```
**Example**
diff --git a/ko/upgrade-guide.md b/ko/upgrade-guide.md
index 6f135e69..03782ca0 100644
--- a/ko/upgrade-guide.md
+++ b/ko/upgrade-guide.md
@@ -1,5 +1,14 @@
## Game > Gamebase > Upgrade Guide
+## 2.66.3
+
+### Unity
+
+#### Changed Minimum Support Version
+
+* 최소 지원 Unity 버전이 2018.4.0 에서 2020.3.0 으로 변경되었습니다.
+* 하위 버전의 Unity 지원이 필요하다면 [고객 센터](https://toast.com/support/inquiry)로 문의해 주시기 바랍니다.
+
## 2.66.2
### iOS
diff --git a/zh/release-notes-android.md b/zh/release-notes-android.md
index 2fb29e03..57a9aad4 100644
--- a/zh/release-notes-android.md
+++ b/zh/release-notes-android.md
@@ -1,5 +1,13 @@
## Game > Gamebase > Release Notes > Android
+### 2.66.3 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Android.zip)
+
+#### 기능 개선/변경
+* 외부 SDK 업데이트: NHN Cloud SDK(1.9.2)
+ * Android 13 이상 특정 디바이스에서 간헐적으로 Native Crash 로그가 리포팅되지 않는 문제가 수정되었습니다.
+ * Amazon 결제 재처리가 개선되었습니다.
+
### 2.66.2 (2024. 08. 27.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.2/GamebaseSDK-Android.zip)
diff --git a/zh/release-notes-unity.md b/zh/release-notes-unity.md
index f20a6338..bee2640d 100644
--- a/zh/release-notes-unity.md
+++ b/zh/release-notes-unity.md
@@ -1,5 +1,11 @@
## Game > Gamebase > Release Notes > Unity
+### 2.66.3 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Unity.zip)
+
+#### 기능 개선/변경
+* Unity 최소지원 버전 변경: 2020.3.0f1
+
### 2.66.3 (2024. 09. 05.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.3/GamebaseSDK-Unity.zip)
diff --git a/zh/release-notes-unreal.md b/zh/release-notes-unreal.md
index 7db90368..17ca9334 100644
--- a/zh/release-notes-unreal.md
+++ b/zh/release-notes-unreal.md
@@ -1,5 +1,15 @@
## Game > Gamebase > Release Notes > Unreal
+### 2.66.1 (2024. 09. 10.)
+[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.1/GamebaseSDK-Unreal.zip)
+
+#### 기능 개선
+* 내부 로직을 개선했습니다.
+
+#### 플랫폼별 변경 사항
+* [Gamebase Android SDK 2.66.3](./release-notes-android/#2663-2024-09-10)
+* [Gamebase iOS SDK 2.66.2](./release-notes-ios/#2662-2024-08-27)
+
### 2.66.0 (2024. 08. 27.)
[SDK Download](https://static.toastoven.net/toastcloud/sdk_download/gamebase/v2.66.0/GamebaseSDK-Unreal.zip)
diff --git a/zh/unity-started.md b/zh/unity-started.md
index bde730a2..c43f4281 100644
--- a/zh/unity-started.md
+++ b/zh/unity-started.md
@@ -9,7 +9,7 @@ This guide describes the environments and initial setting of Gamebase Unity SDK.
>
> Supported Unity versions
>
-> * 2018.4.0 ~ 6000.0.17
+> * 2020.3.0 ~ 6000.0.17
#### Android
> [Caution]