C2SModuleSocial_Initialize

Hive를 초기화합니다. Hive 초기화는 다른 Hive SDK 기능들을 사용하기 전에 반드시 먼저 실행해야 합니다.

 

1.12.0 버전부터 모듈 식별자 serverId 와 gameLanguage를 추가적으로 세팅할 수 있다.
모듈 식별자 코드의 기준은 Hive 연동 가이드라인 Hive 식별자 정책 및 다국어 표기법을 참고한다.

  1. Hive 콘솔 > 프로비저닝 > 공지 > 게임 선택 > 새 팝업 등록에서 등록
  2. C2SModuleSocial_Initialize 시 server ID
  3. C2SModulePromotion_Show 의 addtionalInfo
    예)”addtionalInfo”:”{“server”:”서버 지역 코드값”,”character”:”0″}”
  4. C2SModuleEngagement_ConsumeCoupon의 addtionalInfo
    예)”addtionalInfo”:”{“server”:”서버 지역 코드값”,”character”:”0″}”
  5. C2SModuleHiveIAP_Info의 worldName
  6. C2SModulePromotion_Acquisition 의 gameWorld
  7. C2SModuleSocial_Show 시 serverId
  8. C2SModuleSocial_Info 시 serverId
  9. Hive 아이템 등록 시 서버 정보
Argument Type Type Description Platform 비고
showLog bool (optional) true or false. default false
console에 로그 출력을 설정한다.
all
useSandbox bool (optional) true or false. default false
true: Hive 샌드박스 서버 환경
false: Hive 상용 서버 환경
(샌드박스 서버는 상용 서버와 완전 동일한 버전의 서버 코드를 사용하는 테스트를 위한 서버이다)
all 1.7.0+
appId string (optional) 설정하지 않을 시 프로젝트의 번들 ID를 사용하게 된다. all 1.7.0+
permissionWriteExternalStorage bool 외장 메모리 권한 요청 여부를 설정한다.
default false
Android 1.7.0+, 1.20.2.2-
serverId string 서버 지역 코드값 설정을 위한 serverId.
(백오피스 월드관리에 등록된 월드값을 서버에 따라 구분하여 입력이 되어야 한다.)
서버 지역 코드값은 ‘ISO 3166 alpha-2’ 코드를 기준으로 하며 Hive 연동 가이드라인 게임서버 ID 항목을 참고한다.
all
gameLanguage string 게임 언어 코드값 설정을 위한 gameLanguage
예. “ko”, “en”
게임 언어 코드 값은 ‘ISO 639 alpha-2′(ISO 639-1) 코드를 기준으로 하며 Hive 연동 가이드라인 언어 항목을 참고한다.

  • gameLanguage 키를 입력하지 않으면 디바이스 언어를 사용한다.
  • gameLanguage 키가 Hive 지원 언어코드가 아니라면 default인 en을 사용한다.
all 1.12.0+
Inapp Dictionary keys

  • “pidList”: string array
  • “showLog”: bool, true or false
  • (opt) “marketTarget”
  • (opt) “inappId”
  • (opt) “autoVerify”
  • (opt) “useGoogleAccountId”
all 1.19.1-
Promotion Dictionary keys

  • “showLog”: bool, true or false
all
Tracking Dictionary keys

  • “debugMode”: bool, true or false
  • “Adjust”: Adjust 모듈 초기화 인자들
  • “Singular”: Singular 초기화 인자들
  • “AppsFlyer”: AppsFlyer 초기화 인자들
all 1.5.0+
Singular 추가 (1.13.3+, 1.12.5+, 1.11.9+)
HiveIAP Dictionary keys => 키가 있어야만 Hive IAP 2.0이 작동한다.

  • “showLog”: bool, true or false
all 1.10.0+, 1.19.1-
InappV4 Dictionary keys => 키가 있어야만 Hive IAP 4.0이 작동한다.

  • “showLog”: bool, true or false
all 1.18.4+
showNotice bool (optional) true or false. default true.
true일 경우 서버 점검 및 공지·업데이트 팝업과 사용자 약관을 출력한다.
false일 경우 사용자 약관만 출력한다.
all 1.10.0+
HivePromotion Dictionary keys => 키가 있어야만 Hive Promotion이 작동한다.

  • “showLog”: bool, true or false
all 1.12.0+
timeoutSeconds int (Optional) 타임아웃 최소 시간을 설정한다. (5~15초) all 1.13.0+
showHivePermissionView bool (Optional) true일 경우 Hive SDK의 권한 고지 팝업을 출력하고, false일 경우 팝업을 출력하지 않는다. 기본 값은 true.

(Hive 1.17.2 버전 이상 적용된 앱을 최초 설치하여 계속 false로 유지했다가 이후 한 번이라도 true로 값을 변경하면 Hive SDK 권한 고지 팝업이 1회 노출됨)

all 1.17.2+, 1.20.2.2-
analyticsSendLimit int (Optional) 전송 주기마다 전송할 로그의 최대치 all 1.19.2+
analyticsQueueLimit int (Optional) 최대로 적재할 로그 queue의 양 all 1.19.2+
analyticsSendCycleSecond int (Optional) 로그 전송 주기 all 1.19.2+
hiveOrientation string
  • Hive SDK UI 방향을 설정한다.
  • “all”, “portrait” or “landscape”.
    default “UNDEFINED”.
    “all”일 경우 기기 방향에 따라 HiveUI가 실시간 회전을 지원한다.
all 1.19.6+
facebookPermissions String Array Facebook 로그인 요청 권한을 추가한다. (예: user_friends) all 1.19.8+
authDialogClear Bool C2SModuleSns_Login 호출로 노출되는 IdP 리스트 로그인 페이지 배경 투명화 여부를 설정한다. Android 빌드에 Google Play Games를 지원하는 경우 true 로 설정이 필요하며, 동일한 Hive SDK 버전을 쓰는 iOS 빌드에서도 true 로 설정이 필요하다. all 1.20.2.3+
channel String

게임 앱에서 사용하는 로그인 서비스 플랫폼을 정의합니다. ex. C2S: Hive 플랫폼

hive_config.xml에서도 설정 및 변경이 가능합니다. hive_config.xml을 통해 설정한 경우 이 argument는 설정하지 않아도 됩니다.

all Optional, 1.20.3.2+

Key value for Sns

Key Name Type Description Platform 비고
showLog bool (optional) true or false. default false
console에 로그 출력을 설정한다.
all

 

Key value for Inapp

Key Name Type Description Platform 비고
marketTarget string (optional) 기본 값은 GooglePlay로 설정된다.
“amazon”, “googleplay”, “kddi”, “lebi”, “mbiz”,
“mm”, “ollehmarket”, “ozstore”, “samsungapps”,
“thirdpartybilling”, “tstore”, “googleplay_lebi”, “galaxystore”
Android “galaxystore” 1.17.2+
pidList string array
  • 구매에서 사용할 product id의 리스트로 스토어를 통해 세부정보를 받는다.
  • marketTarget을 googleplay_lebi로 선택 했을 때에는 googleplay에 해당하는 pids를 입력한다.
all
showLog bool (optional) true or false. default false
console에 로그 출력을 설정한다.
all
inappId string (optional) 마켓에서 발급하는 inappId
default로 packageName을 사용한다.
Android
autoVerify bool (optional) 모듈서버 검증을 사용한다.
default false
all
useGoogleAccountId bool (optional) Google 인앱 구매 시 발생할 수 있는 환불 어뷰징 방지를 목적으로 Account ID 값을 구매 정보에 추가한다.
default false
Android 1.16.4+

Key value for Push

Key Name Type Description Platform 비고
showLog bool (optional) true or false. default false
console에 로그 출력을 설정한다.
all
useThirdPartyPush bool JPUSH 또는 아마존 푸시를 사용할 경우에만 활성화한다.
default false
Android 1.3.0+
senderIdList string,
string array
멀티 senderId 사용 시 필요한 senderId를 입력한다. Android 1.3.0+

Key value for Promotion

Key Name Type Description Platform 비고
showLog bool (optional) true or false. default false
console에 로그 출력을 설정함
all
useImageBanner bool (optional) true or false. default false
true로 설정 시 이미지 형태의 전면 배너 노출
(적용 가이드에서 이미지 배너 사용 설정 참고)
all 1.19.1+

Key value for Tracking

Key Name Type Description Platform 비고
debugMode bool (optional) true or false.
추적모듈 디버깅모드 작동 여부
all 1.5.0+
Adjust Dictionary keys

  • “appToken”: Adjust 앱토큰
  • “Matching” 키 매칭 테이블
all 1.5.0+
Singular Dictionary keys

  • “apiKey”: Singular에서 발급받은 apiKey
  • “secretKey”: Singular에서 발급받은 secretKey
  • “Matching”: 키 매칭 테이블
all 1.13.3+, 1.12.5+, 1.11.9+
AppsFlyer Dictionary keys

  • “key”: AppsFlyer에서 발급받은 Dev key
  • “itunesConnectAppId”: 앱의 itunesConnectAppId
  • “Matching”: 키 매칭 테이블
all 1.19.8+

Key value for Adjust

Key Name Type Description Platform 비고
appToken string 광고 주 ID all 1.5.0+
Matching Dictionary *. 키 매칭 테이블
(Adjust는 기본 Update와 Purchase, TutorialComplete를 설정해야 한다)
all 1.5.0+
AppSecretInfo Dictionary (Optional) App Secret 기능을 실행하기 위해 발급 받은 데이터
secretId, info1~4 다섯 개 값 모두 순서대로 입력한다

  • secretId : App Secret 기능을 사용하기 위해 발급받은 id 값
  • info1 : App Secret 기능을 사용하기 위해 발급받은 첫 번째 값
  • info2 : App Secret 기능을 사용하기 위해 발급받은 두 번째 값
  • info3 : App Secret 기능을 사용하기 위해 발급받은 세 번째 값
  • info4 : App Secret 기능을 사용하기 위해 발급받은 네 번째 값
all 1.5.1+

Key value for Singular

Key Name Type Description Platform 비고
apiKey string Singular에서 발급 받은 apiKey all 1.13.3+, 1.12.5+, 1.11.9+
secretKey string Singular에서 발급 받은 secretKey all 1.13.3+, 1.12.5+, 1.11.9+
Matching Dictionary> *. 키 매칭 테이블
(Singular는 기본 Install, Update, Purchase, TutorialComplete를 설정해야 한다)
all 1.13.3+, 1.12.5+, 1.11.9+

Key value for AppsFlyer

Key Name Type Description Platform 비고
key string AppsFlyer에서 발급 받은 Dev Key all 1.19.8+
itunesConnectAppId string 앱의 itunesConnectAppId iOS 1.19.8+
Matching Dictionary 키 매칭 테이블
(AppsFlyer는 기본 Install, Update, Purchase, TutorialComplete를 설정해야 한다)
all 1.19.8+

Key value for HiveIAP

Key Name Type Description Platform 비고
showLog bool (optional) true or false
console에 로그 출력을 설정
default false
all 1.10.0+

Key value for InappV4

Key Name Type Description Platform 비고
showLog bool (optional) true or false
console에 로그 출력을 설정
default false
all 1.10.0+

 

Result CallBack

Initialize Api Call 이후 아래 3개의 Result Callback이 오게 된다.

Api.Promotion_Show

백오피스에서 설정된 값으로 offerwall 활성화 여부를 알림

Argument Type Type Description Platform 비고
offerwallState long -14 offerwall activation
-15 offerwall deactivation
Android

Api.Inapp_Description

inapp 설정 “pidList” 에 세팅된 pid에 대한 상품정보를 마켓에서 받아 전달한다.
Description 기준

  • iOS 사용자 계정 기준
  • Google: 실제 결제할 금액 결정은 사용자 계정 기준으로 결정한다. 실제 결제를 진행할 때 구글 결제 창은 결제 수단에 따라 환율이 적용된 통화를 노출한다.
    예) 결제할 사용자가 한국 계정을 이용하면 통신가 결제가 원화(KRW)로 표시되고, 미국에서 카드로 결제하면 환율이 적용된 미화(USD)로 표시된다.

(구글 한국 금액은 부가세가 포함되지 않은 금액이므로 원화(KRW)일 경우 10% 더해 노출해야 한다)

Argument Type Type Description Platform 비고
list array 설정값에 따라 array type for list가 변경 all

array type for list

Argument Type Type Description Platform 비고
pid string product id all
formattedString string xxx (예: “₩1,000” or “USD1.99”)
(iOS의 경우 “USD|54.99”)
all
localizedTitle string title: 마켓에 등록된 인앱 타이틀로 게임명이 추가되는 형태(예: “10스타(나인하츠)”)라 상품명으로 타이틀 사용을 금함 all
localizedDescription string description: 마켓에 등록된 인앱 내용으로 입력되 내용이 그대로 전달됨 all
currencyCode string 1. 통화코드 – formattedString과 동일한 Code를 내려줌
ISO 4217 currency code (현재 Apple, GooglePlay만 지원)
2. 기호 변환 – [통화기호 다운로드]
Apple
Google
amountMicros int64
  • android 일 경우 int64(long)
  • iOS일 경우 string

실제가격단위에 *1,000,00 을 연산한 소수점 제거
formattedString의 값과 동일
예. 0.99 -> 990000, 1000 -> 1000000000

Apple
Google

Api.Social_Initialize

Argument Type Type Description Platform 비고
isAuthorized bool
  • true: 정식 유저로 로그인한 적이 있음
  • false: 정식 유저로 로그인한 적이 없음
autoLoginType string
  • “guest”: 게스트의 세션키가 존재
  • “platform”: 정식 세션 키가 존재 (guest 로그인 금지)
  • “authorized”: 세션 키는 없으나 정식 로그인한 적이 있는 유저 (자동 로그인 불가)
  • “” (empty string): 세션키 없음 (자동 로그인 불가)
did string au에서 발급한 did
did는 device id로 지칭하지 않으며 Advertising id를 추상화 한 값
isPGSLogin bool PGS Login 여부
playername string PGS Player Name
playerid string PGS Player id

Api.HiveIAP_Initialize

Argument Type Type Description Platform 비고
marketIds array 사용 가능한 마켓의 id 정보

  • 러비 사용이 가능하다면 복수의 id가 내려옴
    (1: apple, 2: google, 3: Lebi, 4: 국내 원스토어)
all 1.10.0+

Api.InappV4_Initialize

Argument Type Type Description Platform 비고
marketList array 사용 가능한 마켓 정보

  • InappV4 초기화 참고
    apple_appstore
    google_playstore
    hive_lebi
    onestore
    amazon_appstore
    samsung_galaxystore
    huawei_appgallery
all 1.18.4+