콘텐츠로 이동

Unity

hive_config.xml 파일을 생성하고 파일 내에 있는 항목들을 설정합니다. SDK Unity 환경에서 hive_config.xml 파일을 생성하고 설정하는 방법은 2가지입니다.

  1. Unity Config Editor으로 파일 자동 생성, 설정
  2. 파일을 수동으로 생성, 설정

Unity Config Editor 설정

Unity 환경에서는 Unity Config Editor로 hive_config.xml 파일을 자동으로 생성하고 설정값을 할당할 수 있습니다.

OS와 인증 버전 설정

Hive > Hive Config (Edit Config)를 선택하고 Editor 화면에서 필요한 값들을 설정합니다. 먼저 OSHive App Id을 확인합니다. 그리고, Google 인증을 사용하려면 OS를 선택하고 Auth 메뉴에서 Google SignIn 항목에 값들을 설정합니다.

Google Sign-In Settings

일반 Google 인증을 사용하기 위해 Auth 메뉴에서 Google SignIn 항목에 필요한 값을 아래 내용을 따라 입력합니다.

  • Google App Id 필드에 발급받은 AppID를 입력하세요.
  • Google Server Client ID 필드에 발급받은 웹 애플리케이션의 Client ID값을 입력하세요.

HiveConfig Settings

hive_config.xml 파일에서 설정하는 값 중 다음 값을 설정할 수 있습니다.

항목 OS 설명 필수 여부 SDK 기본값
appId Android, iOS, Windows 게임 빌드 식별자입니다. X
  • Android: Package Name
  • iOS: Bundle ID
  • Windows: Application ID
zone Android, iOS, Windows SDK가 접속할 서버입니다.
  • real: 운영 서버
  • sandbox: 테스트 서버
X `real`
useLog Android, iOS, Windows SDK의 내부 동작에 대한 로그 활성화 여부입니다. 로그를 활성화하면 개발 도구 화면에 로그를 출력합니다.
  • true: 로그 활성화
  • false: 로그 비활성화
X `false`
ageGateU13 Android, iOS, Windows COPPA ageGateU13 적용 여부입니다. SDK에 COPPA ageGateU13을 적용하려면, 콘솔에 COPPA 약관을 등록한 후 SDK를 초기화하기 전에 이 값을 true로 설정해야 합니다. COPPA ageGateU13을 적용하지 않으려면, 콘솔에 COPPA 약관이 아닌 다른 약관을 등록한 상태에서 SDK를 초기화하기 전에 이 값을 false로 설정해야 합니다.
  • true: SDK에 COPPA ageGateU13을 적용
  • false: SDK에 COPPA ageGateU13을 적용하지 않음
X `false`
hiveOrientation Android, iOS, Windows 설정에 따라 기기 방향에 맞추어 SDK UI가 노출됩니다.
  • all: 기기 방향에 따라 가로 및 세로에 맞추어 노출
  • portrait: 세로로 노출
  • landscape: 가로로 노출
  • undefined: 게임 앱 설정에 따름
X 'undefined'
channel Android, iOS, Windows 게임 앱에서 사용하는 로그인 및 인앱 지원 서비스 플랫폼입니다. SDK를 통해 외부 소셜에 로그인하거나 인앱 구매를 사용하는 경우 C2S에 해당합니다. 애널리틱스 데이터 수집 용도로 사용됩니다.
  • C2S: 하이브 플랫폼
  • KAK: 카카오
  • LIN: 라인
  • STE: 스팀
  • EPI: 에픽 스토어
  • FAS: FastSprint
O `C2S`
market Android, iOS, Windows 인앱 구매를 처리할 마켓입니다. 애널리틱스 수집 용도로 사용됩니다.
  • GO: Google Play Store
  • AP: Apple App Store
  • ON: OneStore
  • AM: Amazon Appstore
  • LE: Com2us Lebi
  • HS: 하이브 스토어
  • GA: Samsung Galaxy Store
  • HU: Huawei AppGallery
O 공백값
agreementDetermineBase Android, iOS 약관 동의를 받는 기준을 결정합니다. `device` 또는 `account`를 선택할 수 있으며 기본값은 `device`입니다.
  • device 선택 시 약관 동의 팝업을 초기화 단계인 AuthV4.setup() 실행중에 노출하며 기기 기반으로 한번만 동의를 받습니다. 기기 기반으로 일단 동의를 받으면, 같은 기기에서 유저가 다른 계정으로 로그인해도 약관 동의를 받지 않습니다. `resetAgreement()`로 약관 동의 기록을 지울 수 있습니다.
  • account 선택 시 약관 동의 팝업을 로그인중에 노출하며 PlayerId 별로 한번만 동의를 받습니다. COPPA ageGateU13을 적용하지 않을 때에만 사용할 수 있습니다. `resetAgreement()`로 약관 동의 기록을 지울 수 없습니다. 마케팅 추적 도구들은 약관 동의 이후부터 동작합니다.
X `device`
unsupportedUAShareType Android Android 전용 설정으로, 프로모션 유저 애퀴지션(UA) 공유하기 기능 사용 시 아이콘으로 노출하지 않을 공유앱을 설정합니다. 설정한 대상들은 UI에서 아이콘이 노출되지 않습니다.
  • SMS
  • URL
  • KAKAO
  • LINE
  • WHATSAPP
  • FACEBOOK
  • MESSENGER
  • WECHAT
X 공백값
httpConnectTimeout Android, iOS, Windows SDK 내부에서 사용하는 HTTP Connect의 타임아웃 시간(초)입니다.
  • 기본 값은 8초로 설정되어 있으며 특수한 상황이 아닌 이상 값 변경을 금지합니다.
X `8`(단위: 초)
httpReadTimeout Android, iOS, Windows SDK 내부에서 사용하는 HTTP Read 타임아웃 시간(초)입니다.
  • 기본 값은 8초로 설정되어 있으며 특수한 상황이 아닌 이상 값 변경을 금지합니다.
X `8`(단위: 초)

hive_config.xml 파일 생성

Inspector 설정 완료 후, 아래 방법을 따라 hive_config.xml 파일을 생성합니다.

  • Android: Save & Regenerate setting files 버튼을 클릭해 AndroidManifest.xml 파일과 hive_config.xml 파일을 생성하세요. hive_config.xml 파일은 다음의 디렉토리에 생성됩니다.
    • Unity 2021 이상: <프로젝트_루트>/Assets/HiveSDK/hive.androidlib/src/main/res/raw
    • Unity 2021 미만: <프로젝트_루트>/Assets/Plugins/Android/res/raw/
  • iOS: Save & Regenerate setting files 버튼을 클릭해 Info.plist 파일과 hive_config.xml 파일을 생성하세요. hive_config.xml 파일은 다음의 디렉토리에 생성됩니다.
    • <프로젝트_루트>/Assets/Plugins/iOS/

hive_config.xml 예시

아래는 인증(Google 인증), 빌링(Google Play Store 또는 Apple App Store)을 사용할 때 hive_config.xml 파일 예시입니다. 사용하려는 SDK 기능과 앱 환경에 맞게 값을 변경, 추가, 삭제 후 사용하세요. iOS는 Apple App Store 빌링만 지원하므로, Unity iOS 환경에서는 마켓을 AP로 설정합니다.

<properties>

    <!-- Hive SDK 공통 설정: START -->
    <!-- 게임 빌드 고유 식별자 설정 -->
    <appId>com.sample.your</appId>

    <!-- Hive 플랫폼의 서버 선택. sandbox는 개발용, real은 상용
        (sandbox, real) -->
    <zone>real</zone>

    <!-- SDK 내부 동작 로그 사용 여부 설정
        (true, false) -->
    <useLog>false</useLog>

    <!-- ageGateU13 적용 여부 설정
        (true, false) -->
    <ageGateU13>false</ageGateU13>

    <!-- Hive Orientation 설정 -->
    <hiveOrientation>landscape</hiveOrientation>

    <!-- 채널 설정(로그인 및 인앱 지원 서비스 플랫폼)
        (C2S: Hive 플랫폼) -->
    <channel>C2S</channel>

    <!-- 결제 마켓 설정
        (GO: Google Play, LE: Com2us Lebi, AP: Apple App Store) -->
    <market>GO</market>

    <!-- 약관 동의 수신 기준 설정
        (device, account) -->
    <agreementDetermineBase>false</agreementDetermineBase>

    <!-- Hive SDK 내부에서 사용되는 HTTP Connect Timeout 시간을 초단위로 설정
        (특별한 경우가 아니면 변경 금지) -->
    <httpConnectTimeout>8</httpConnectTimeout>

    <!-- Hive SDK 내부에서 사용되는 HTTP Read Timeout 시간을 초단위로 설정
        (특별한 경우가 아니면 변경 금지) -->
    <httpReadTimeout>8</httpReadTimeout>
    <!-- Hive SDK 공통 설정: END -->

    <!-- Hive SDK 기능별 설정: START -->
    <!-- 인증 기능 설정: Google 인증 사용 -->
    <providers>             
        <google playAppId="123456789012"  clientId="123456789012-abc.apps.googleusercontent.com"  serverClientId="123456789012-abc.apps.googleusercontent.com"  reversedClientId="com.googleusercontent.apps.123456789012-abc"  deviceFlowClientId="331526026701-gn1abq1ev23nqj7rdvvlaamf7ii4f3u9.apps.googleusercontent.com" />
    </providers>
    <!-- Hive SDK 기능별 설정: END -->

</properties>
Info

SDK 설정은 앱 빌드 전에 설정 파일에 값을 저장하거나, 런타임(앱 실행) 중에 설정값을 변경할 수 있습니다. 자세한 내용은 SDK 설정을 확인하세요.