Classic/VPC 환경에서 이용 가능합니다.
이용약관, 개인정보보호정책, 환불 정책 공지사항, 게임 이용 방법, 결제 및 환불 문의, 계정 관리, 버그 신고 및 건의 사항 등 다양한 사용자 문의에 대해 지원합니다. 사용자는 게임 내 문의하기, 혹은 PC 에서 문의를 접수할 수 있습니다. 문의 접수 시에는 이미지, 영상등의 파일도 첨부가 가능합니다. 모바일 게임 고객지원센터는 사용자가 즐거운 게임 경험을 할 수 있도록 지원하는 중요한 역할을 합니다. 사용자의 소리에 귀 기울이고, 신속하게 대응함으로써 더 나은 게임 환경을 제공하기 위해 노력해야 합니다.
지원되는 언어는 영어, 한국어, 중국어(번체), 중국어(간체), 일본어, 태국어, 인도어, 이태리어, 독일어, 스페인어, 프랑스어, 말레이시아어 총 12가지 언어를 지원하며, 추가적인 언어 지원에 대한 문의는 네이버 클라우드 고객지원센터를 통해서 요청해 주시기 바랍니다.
사용 방법
고객센터 UI 및 운영에 대한 모든 기능은 게임팟에서 제공됩니다. 게임팟 대시보드의 고객 지원 > 설정을 통해 각 기능에 대한 설정을 할 수 있습니다.
고객 지원 기능
게임팟 SDK에서 제공하는 고객 지원 웹뷰와 페이지 호출 기능을 안내합니다.
이용약관 웹뷰
이용약관을 호출하려면 아래 코드를 호출해 주십시오.
- C#:
NBaseSDK.NBase.openTerms();
- Kotlin:
NBase.openTerms(activity) { status, error ->
if (error != null) {
// openTerms Failed
Log.e("NBase", "openTerms Failed: ${error.message}")
} else {
// openTerms Success
Log.d("NBase", "openTerms Success: $status")
}
}
- Java:
NBase nBase = NBase.INSTANCE;
nBase.openTerms(activity, (status, e) -> {
if (e != null) {
Log.e("NBase", "openTerms Fail: " + e.getMessage());
} else {
Log.d("NBase", "openTerms Success: " + status.toString());
}
return null;
});
- Swift:
NBase.openTerms()
- Objective-C:
[NBaseBridge.shared openTerms];
다음 표는 openTerms 호출 시 전달하는 매개변수를 설명합니다.
- Parameter
| Key | Type | Description | Required |
|---|---|---|---|
| activity | Activity | 현재 Activity (Android만 해당) | O |
다음 표는 openTerms 콜백으로 전달되는 값을 설명합니다.
- Callback
| Key | Type | Description |
|---|---|---|
| status | Boolean | 성공 여부 |
개인정보보호정책 웹뷰
개인정보보호정책을 호출하려면 아래 코드를 호출해 주십시오.
- C#:
NBaseSDK.NBase.openPrivacy();
- Kotlin:
NBase.openPrivacy(activity) { status, error ->
if (error != null) {
// openPrivacy Failed
Log.e("NBase", "openPrivacy Failed: ${error.message}")
} else {
// openPrivacy Success
Log.d("NBase", "openPrivacy Success: $status")
}
}
- Java:
NBase nBase = NBase.INSTANCE;
nBase.openPrivacy(activity, (status, e) -> {
if (e != null) {
Log.e("NBase", "openPrivacy Fail: " + e.getMessage());
} else {
Log.d("NBase", "openPrivacy Success: " + status.toString());
}
return null;
});
- Swift:
NBase.openPrivacy()
- Objective-C:
[NBaseBridge.shared openPrivacy];
다음 표는 openPrivacy 호출 시 전달하는 매개변수를 설명합니다.
- Parameter
| Key | Type | Description | Required |
|---|---|---|---|
| activity | Activity | 현재 Activity (Android만 해당) | O |
다음 표는 openPrivacy 콜백으로 전달되는 값을 설명합니다.
- Callback
| Key | Type | Description |
|---|---|---|
| status | Boolean | 성공 여부 |
웹뷰
게임팟 웹뷰(Webview)는 네이티브 앱 내에서 직접 웹 콘텐츠를 표시하는 기능을 제공합니다. 이를 통해 사용자는 게임을 벗어나지 않고도 다양한 웹 기반 콘텐츠에 접근할 수 있습니다.
게임팟 웹뷰를 호출하려면 아래 코드를 호출해 주십시오.
- C#:
NBaseSDK.NBase.openWebView("https://guide.ncloud-docs.com");
- Kotlin:
NBase.openWebView(activity, "https://guide.ncloud-docs.com") { status, error ->
if (error != null) {
// openWebView Failed
Log.e("NBase", "openWebView Failed: ${error.message}")
} else {
// openWebView Success
Log.d("NBase", "openWebView Success: $status")
}
}
- Java:
NBase nBase = NBase.INSTANCE;
nBase.openWebView(activity, "https://guide.ncloud-docs.com", (status, e) -> {
if (e != null) {
Log.e("NBase", "openWebView Fail: " + e.getMessage());
} else {
Log.d("NBase", "openWebView Success: " + status.toString());
}
return null;
});
- Swift:
NBase.openWebView(url: "https://guide.ncloud-docs.com")
- Objective-C:
[NBaseBridge.shared openWebView:@"https://guide.ncloud-docs.com"];
다음 표는 openWebView 호출 시 전달하는 매개변수를 설명합니다.
- Parameter
| Key | Type | Description | Required |
|---|---|---|---|
| activity | Activity | 현재 Activity (Android만 해당) | O |
| url | String | 표시할 웹 페이지 URL | O |
다음 표는 openWebView 콜백으로 전달되는 값을 설명합니다.
- Callback
| Key | Type | Description |
|---|---|---|
| status | Boolean | 성공 여부 |
페이지
페이지 서비스는 게임 내 이용약관, 개인정보보호정책 외 다양한 목적으로 웹페이지를 제작하고 관리할 수 있는 기능을 제공합니다. 대시보드의 웹 에디터를 통해 사용자가 직접 페이지를 디자인하고 구성한 후, 이를 모바일 게임 내에서 웹뷰 형태로 손쉽게 보여줄 수 있습니다. 이를 통해 게임 개발사는 게임 사용자에게 필요한 정보를 효과적으로 제공할 수 있습니다.
페이지 기능을 호출하려면 아래 코드를 호출해 주십시오.
- C#:
NBaseSDK.NBase.openPage(pageId);
- Kotlin:
NBase.openPage(activity, pageId) { status, error ->
if (error != null) {
// openPage Failed
Log.e("NBase", "openPage Failed: ${error.message}")
} else {
// openPage Success
Log.d("NBase", "openPage Success: $status")
}
}
- Java:
NBase nBase = NBase.INSTANCE;
nBase.openPage(activity, pageId, (status, e) -> {
if (e != null) {
Log.e("NBase", "openPage Fail: " + e.getMessage());
} else {
Log.d("NBase", "openPage Success: " + status.toString());
}
return null;
});
- Swift:
NBase.openPage(pageId: pageId)
- Objective-C:
[NBaseBridge.shared openPage: pageId];
다음 표는 openPage 호출 시 전달하는 매개변수를 설명합니다.
- Parameter
| Key | Type | Description | Required |
|---|---|---|---|
| activity | Activity | 현재 Activity (Android만 해당) | O |
| pageId | String | 대시보드 > 고객지원 > 페이지 > 웹 접근 주소 pages/{pageId} 부분의 {pageId} 값 | O |
다음 표는 openPage 콜백으로 전달되는 값을 설명합니다.
- Callback
| Key | Type | Description |
|---|---|---|
| status | Boolean | 성공 여부 |
스토어로 이동
게임의 최신 버전을 사용자에게 제공하기 위해, 게임 내에서 직접 앱스토어의 업데이트 페이지로 이동하는 기능은 매우 중요합니다. 이를 위해 openAppStore 메서드를 사용하여 사용자가 쉽게 게임의 최신 버전으로 업데이트할 수 있도록 지원합니다. 게임 업데이트를 위해 사용자를 앱스토어의 업데이트 페이지로 안내하기 위해서는 대시보드에 스토어별 마켓 코드를 설정해야 합니다. 설정이 완료된 후, 아래 코드를 사용하여 사용자가 앱스토어의 업데이트 페이지로 이동할 수 있게 합니다.
- C#:
NBaseSDK.NBase.openAppStore();
- Kotlin:
NBase.openAppStore(activity) { status, error ->
if (error != null) {
// openAppStore Failed
Log.e("NBase", "openAppStore Failed: ${error.message}")
} else {
// openAppStore Success
Log.d("NBase", "openAppStore Success: $status")
}
}
- Java:
NBase nBase = NBase.INSTANCE;
nBase.openAppStore(activity, (status, e) -> {
if (e != null) {
Log.e("NBase", "openAppStore Fail: " + e.getMessage());
} else {
Log.d("NBase", "openAppStore Success: " + status.toString());
}
return null;
});
- Swift:
NBase.openAppStore()
- Objective-C:
[NBaseBridge.shared openAppStore];
다음 표는 openAppStore 호출 시 전달하는 매개변수를 설명합니다.
- Parameter
| Key | Type | Description | Required |
|---|---|---|---|
| activity | Activity | 현재 Activity (Android만 해당) | O |
다음 표는 openAppStore 콜백으로 전달되는 값을 설명합니다.
- Callback
| Key | Type | Description |
|---|---|---|
| status | Boolean | 성공 여부 |
공지사항
대시보드에 등록한 공지사항 배너를 조회하고 게임 화면에 표시하는 방법을 안내합니다.
공지사항 정보 가져오기
대시보드에 설정된 공지사항 배너 정보를 가져오는 기능입니다. 공지사항 배너 정보를 가져오려면 아래 코드를 호출해 주십시오.
- C#:
NBaseSDK.NBase.getBanners("url", (banners, error) =>
{
if (error != null)
{
// getBanners Failed
Debug.Log("getBanners Failed: " + error.Message.ToString());
}
else
{
// getBanners Success
Debug.Log("getBanners Success: " + banners.ToString());
}
});
- Kotlin:
NBase.getBanners("url") { banners, error ->
if (error != null) {
// getBanners Failed
Log.e("NBase", "getBanners Failed: ${error.message}")
} else {
// getBanners Success
Log.d("NBase", "getBanners Success: $banners")
}
}
- Java:
NBase nBase = NBase.INSTANCE;
nBase.getBanners("url", (banners, e) -> {
if (e != null) {
Log.e("NBase", "getBanners Fail: " + e.getMessage());
} else {
Log.d("NBase", "getBanners Success: " + banners.toString());
}
return null;
});
- Swift:
NBase.getBanners(type: "url") { result in
switch result {
case .success(let banners):
// getBanners Success
print("getBanners Success: \(banners)")
case .failure(let error):
// getBanners Failed
print("getBanners Failed: \(error.localizedDescription)")
}
}
- Objective-C:
[NBaseBridge.shared getBanners:@"url" :^(NSDictionary * _Nullable result, NSError * _Nullable error) {
if (error) {
// getBanners Failed
NSLog(@"getBanners Failed: %@", error.localizedDescription);
} else {
// getBanners Success
NSLog(@"getBanners Success: %@", result);
}
}];
다음 표는 getBanners 호출 시 전달하는 매개변수를 설명합니다.
- Parameter
| Key | Type | Description | Required |
|---|---|---|---|
| type | String | 배너 타입 - "url": 웹 URL로 연결되는 배너 - "scheme": 스킴으로 연결되는 배너 |
O |
다음 표는 getBanners 콜백으로 전달되는 값을 설명합니다.
- Callback
| Key | Type | Description |
|---|---|---|
| banners | List |
배너 목록 |
공지사항 팝업 호출
공지사항은 게임 내에서 대시보드에 설정한 이미지를 보여주는 기능을 제공합니다. 클릭 이벤트로 특정 링크를 열 수 있습니다.
Android SDK 3.0.96, iOS SDK 3.0.65, Unity SDK 3.0.18 이상에서는 배너 페이지 인디케이터의 모양(선형 또는 도트형)과 색상, 자동 롤링 간격을 설정할 수 있습니다. 다음은 해당 옵션을 모두 사용하는 예제입니다.
- C#:
NBaseSDK.NBase.openBanner(
"url",
true,
true,
"#FFFFFF",
"#808080",
"5",
(bannerId, error) =>
{
if (error != null)
{
Debug.Log("openBanner Failed: " + error.Message);
return;
}
Debug.Log("openBanner Success: " + bannerId);
}
);
- Kotlin:
NBase.openBanner(
activity,
"url",
true,
true,
"#FFFFFF",
"#808080",
"5"
) { bannerId, error ->
if (error != null) {
// openBanner Failed
Log.e("NBase", "openBanner Failed: ${error.message}")
} else {
// openBanner Success
Log.d("NBase", "openBanner Success: $bannerId")
}
}
- Java:
NBase.INSTANCE.openBanner(
activity,
"url",
true,
true,
"#FFFFFF",
"#808080",
"5",
(bannerId, error) -> {
if (error != null) {
Log.e("NBase", "openBanner Failed: " + error.getMessage());
} else {
Log.d("NBase", "openBanner Success: " + bannerId);
}
return null;
}
);
- Swift:
NBase.openBanner(
type: "url",
showTodayButton: true,
useLineIndicator: true,
activeColorHex: "#FFFFFF",
inactiveColorHex: "#808080",
rollSecond: "5"
) { result in
switch result {
case .success(let bannerId):
// openBanner Success
print("openBanner Success: \(bannerId)")
case .failure(let error):
// openBanner Failed
print("openBanner Failed: \(error.localizedDescription)")
}
}
- Objective-C:
[NBaseBridge.shared openBanner:@"url"
showTodayButton:YES
useLineIndicator:YES
activeColorHex:@"#FFFFFF"
inactiveColorHex:@"#808080"
rollSecond:@"5"
:^(NSDictionary * _Nullable result, NSError * _Nullable error) {
if (error) {
// openBanner Failed
NSLog(@"openBanner Failed: %@", error.localizedDescription);
} else {
// openBanner Success
NSLog(@"openBanner Success: %@", result);
}
}];
다음 표는 openBanner 호출 시 전달하는 매개변수를 설명합니다.
- Parameter
| Key | Type | Description | Required |
|---|---|---|---|
| activity | Activity | 현재 Activity (Android만 해당) | O |
| type | String | 배너 타입
|
O |
| showTodayButton | Boolean | [오늘 하루 보지 않기] 버튼 표시 여부 | O |
| useLineIndicator | Boolean | 배너 페이지 인디케이터 모양
|
X |
| activeColor / activeColorHex | String | 현재 페이지 인디케이터 색상 (16진수 색상 문자열)
|
X |
| inactiveColor / inactiveColorHex | String | 비활성 페이지 인디케이터 색상 (16진수 색상 문자열)
|
X |
| rollSecond | String | 배너 자동 롤링 간격 (초)
|
X |
다음 표는 openBanner 콜백으로 전달되는 값을 설명합니다.
- Callback
| Key | Type | Description |
|---|---|---|
| bannerId | String | 클릭된 배너의 URL 또는 Scheme |
| error | Error | 배너 표시 실패 시 에러 정보 |
고객 문의
사용자가 게임 안에서 고객지원 메뉴에 접근할 수 있도록 고객지원 웹뷰를 호출하는 방법을 안내합니다.
고객지원 웹뷰
고객지원 웹뷰는 게임 내에서 사용자가 문의 접수, 공지사항, FAQ 와 같은 메뉴에 접근할 수 있는 웹뷰를 노출하는 기능입니다. 고객지원 웹뷰를 호출하려면 아래 코드를 호출해 주십시오.
- C#:
NBaseSDK.NBase.openCustomerSupport();
- Kotlin:
NBase.openCustomerSupport(activity) { status, error ->
if (error != null) {
// openCustomerSupport Failed
Log.e("NBase", "openCustomerSupport Failed: ${error.message}")
} else {
// openCustomerSupport Success
Log.d("NBase", "openCustomerSupport Success: $status")
}
}
- Java:
NBase nBase = NBase.INSTANCE;
nBase.openCustomerSupport(activity, (status, e) -> {
if (e != null) {
Log.e("NBase", "openCustomerSupport Fail: " + e.getMessage());
} else {
Log.d("NBase", "openCustomerSupport Success: " + status.toString());
}
return null;
});
- Swift:
NBase.openCustomerSupport()
- Objective-C:
[NBaseBridge.shared openCustomerSupport];
다음 표는 openCustomerSupport 호출 시 전달하는 매개변수를 설명합니다.
- Parameter
| Key | Type | Description | Required |
|---|---|---|---|
| activity | Activity | 현재 Activity (Android만 해당) | O |
다음 표는 openCustomerSupport 콜백으로 전달되는 값을 설명합니다.
- Callback
| Key | Type | Description |
|---|---|---|
| status | Boolean | 성공 여부 |
약관 동의
이용약관과 개인정보보호정책을 함께 표시하고 사용자 동의를 받는 방법을 안내합니다.
이용약관 및 개인정보보호정책 동의
이용약관과 개인정보보호정책을 함께 표시하고 사용자의 푸시 동의 여부와 약관 동의를 받는 기능입니다.
- C#:
NBaseSDK.NBase.openTermsAndPrivacy((agreement, error) =>
{
if (error != null)
{
// openTermsAndPrivacy Failed
Debug.Log("openTermsAndPrivacy Failed: " + error.Message.ToString());
}
else
{
// openTermsAndPrivacy Success
Debug.Log("openTermsAndPrivacy Success: " + agreement.ToString());
}
});
- Kotlin:
NBase.openTermsAndPrivacy(activity) { agreement, error ->
if (error != null) {
// openTermsAndPrivacy Failed
Log.e("NBase", "openTermsAndPrivacy Failed: ${error.message}")
} else {
// openTermsAndPrivacy Success
Log.d("NBase", "openTermsAndPrivacy Success: $agreement")
}
}
- Java:
NBase nBase = NBase.INSTANCE;
nBase.openTermsAndPrivacy(activity, (agreement, e) -> {
if (e != null) {
Log.e("NBase", "openTermsAndPrivacy Fail: " + e.getMessage());
} else {
Log.d("NBase", "openTermsAndPrivacy Success: " + agreement.toString());
}
return null;
});
- Swift:
NBase.openTermsAndPrivacy { result in
switch result {
case .success(let agreement):
// openTermsAndPrivacy Success
print("openTermsAndPrivacy Success: \(agreement)")
case .failure(let error):
// openTermsAndPrivacy Failed
print("openTermsAndPrivacy Failed: \(error.localizedDescription)")
}
}
- Objective-C:
[NBaseBridge.shared openTermsAndPrivacy:^(NSDictionary * _Nullable result, NSError * _Nullable error) {
if (error) {
// openTermsAndPrivacy Failed
NSLog(@"openTermsAndPrivacy Failed: %@", error.localizedDescription);
} else {
// openTermsAndPrivacy Success
NSLog(@"openTermsAndPrivacy Success: %@", result);
}
}];
다음 표는 openTermsAndPrivacy 호출 시 전달하는 매개변수를 설명합니다.
- Parameter
| Key | Type | Description | Required |
|---|---|---|---|
| activity | Activity | 현재 Activity (Android만 해당) | O |
다음 표는 openTermsAndPrivacy 콜백으로 전달되는 값을 설명합니다.
- Callback
| Key | Type | Description |
|---|---|---|
| agreement | Agreement | 동의 결과 정보 |