Unity
Unity 환경에서 hive_config.xml을 설정하는 방법은 아래 2가지입니다.
1. Unity Hive Config Editor로 자동 설정¶
Unity 환경에서는 Unity Hive Config Editor로 hive_config.xml 파일을 자동으로 생성하고 내용 대부분을 설정할 수 있습니다. 단, Unity Hive Config Editor를 사용하더라도 hive_config.xml 파일 내 일부 값들은 수동으로 설정해야 합니다.
Note
Android 앱 개발 시에는 AndroidManifest.xml을 직접 설정할 필요가 없어 편리하므로 Unity Hive Config Editor 사용을 권장합니다.
Unity Hive Config Editor 실행¶
Hive > Hive Config (Edit Config)를 선택하고 Editor 화면에서 필요한 값들을 설정합니다.
실행 환경 선택¶
먼저 앱 실행 환경(Android, iOS, macOS, Windows)을 선택합니다.
Common (Hive SDK 기능 공통)¶
Common 탭에서 Hive SDK 모든 기능들에 공통으로 해당하는 설정을 진행합니다. Hive AppID를 설정하고, 서버(상용 또는 샌드박스)를 선택할 수 있습니다. 또 앱을 실행할 때 노출할 화면 방향을 정할 수 있습니다. Common 탭에 있는 설정은 모두 필수로 입력해야 합니다.
필드 | 설명 | 값 범위 |
---|---|---|
Hive App Id | Hive 콘솔 앱센터에 등록한 AppID | (예시: com.sample.your ) |
Zone | Hive 서버 | - Sandbox (샌드박스) - Real (상용) |
Logging | Hive SDK 내부 동작에 대한 로그 활성화 여부 | - On - Off |
AgeGateU13 | COPPA ageGateU13 적용 여부 | - Off - On |
Hive Orientation | 설정에 따라 기기 방향에 맞추어 Hive SDK의 UI가 노출 | - All - Portrate - Landscape - Undefined |
Channel | 게임 앱에서 사용하는 로그인 및 인앱 지원 서비스 플랫폼 | - C2S (Hive 플랫폼) - KAK (카카오) - LIN (라인) - STE (스팀) - EPI (에픽 스토어) - FAS (FastSprint) |
Market | 인앱 구매를 결제할 마켓 (애널리틱스 수집 용도) | - GO (Google PlayStore) - AP (Apple AppStore) - ON (OneStore) - AM (Amazon AppStore) - LE (Com2us Lebi) - HS (Hive Store) - GA (Samsung GalaxyStore) - HU (Huawei AppGallery) |
Universal Link | iOS 디퍼드 딥링크 설정을 위한 Universal Link | 앱 개발사가 지정한 도메인 (예: https://yourdomain.com ) |
Auth (인증)¶
Auth 탭에서는 Hive SDK 인증 기능을 사용하기 위한 설정을 진행합니다. Hive SDK는 Facebook, Google, QQ 등 IdP 로그인을 지원합니다. 로그인에 사용할 IdP를 선택 후, 이 IdP 개발자 콘솔(예시: Google 콘솔)에 있는 AppId
, ClientId
등을 가져와 입력해야 합니다.
예를 들어, Google SignIn을 사용하려면 Google SignIn 항목에 필요한 값을 Google 콘솔에서 가져와 아래와 같이 Auth 탭에 입력해야 합니다.
- Google App Id: Google 콘솔에서 발급받은 AppID를 입력
- Google Server Client ID: Google 콘솔에서 발급받은 웹 애플리케이션의 Client ID값을 입력
Note
각 인증 IdP 설정 값에 대한 자세한 내용은 인증 사전 준비 페이지를 참고하세요.
Market (빌링)¶
Market 탭에서는 Hive SDK 빌링 기능을 사용하기 위한 설정을 진행합니다. Hive SDK는 GooglePlay Store, Apple AppStore와 같은 앱 마켓을 지원하며, 이 탭에서는 인앱 상품 구매에 필요한 값을 설정해야 합니다.
예를 들어, 앱이 Android Lebi 마켓과 Wechat Pay 결제를 지원한다면, Wechat 콘솔에서 발급받은 Payment Key를 마켓 탭에 입력해야 합니다.
필드 | 설명 | 값 범위 |
---|---|---|
Wechat Payment Key | Android에서 Wechat을 Lebi 마켓 충전 수단으로 사용할 경우 Wechat의 Payment Key를 설정 | (예시 : abcDEF1234xYz789) |
Analytics (마케팅 어트리뷰션)¶
Analytics 탭에서는 Hive SDK 마케팅 어트리뷰션 기능을 사용하기 위한 설정을 진행합니다. Hive SDK는 Adjust, Firebase 등을 통한 마케팅 어트리뷰션을 지원하며, 해당 서비스 개발자 콘솔에서 key
, event
값을 가져와 이 탭에 입력해야 합니다.
예를 들어, Adjust를 사용하려면 Analytics 탭에서 Adjust 항목에 필요한 값을 아래 내용을 따라 입력합니다.
- appToken: Adjust 콘솔에서 발급받은 AppToken을 입력
- Event: Adjust 콘솔에 등록한 이벤트 Name과 Value를 입력
Note
각 마케팅 어트리뷰션 설정에 관한 자세한 내용은 마케팅 어트리뷰션 사전 준비 페이지를 참고하세요.
Optional (네트워크 통신 옵션, 로그 및 기타 기능)¶
Optional 탭에서는 Hive SDK 사용 시 네트워크 통신 옵션, 로그, 기타 설정을 입력할 수 있습니다.
예를 들어, 어떤 Hive SDK 메서드를 호출할 때, 네트워크 타임아웃 시간을 연장하기 원한다면 httpConnectTimeout
및 httpReadTimeout
값을 증가시킵니다. 또 다른 예로, 원격 로그 전송 시 전송 주기와 전송 로그 데이터 크기를 변경하면, 애널리틱스 로그 설정 값들을 변경할 수 있습니다. Optional 탭 항목들은 반드시 필요한 경우가 아니라면 기본값 그대로 사용하는 것을 권장합니다.
필드 | 설명 | 값 범위 |
---|---|---|
Unsupported UA Share Type | Android UA Share 기능 사용 시 Hive 공유하기 UI에 사용할 소셜 미디어 종류 | - SMS - URL - KAKAO - LINE - MESSENGER |
agreementDetermineBase | 약관 동의를 받는 기준을 결정 | - device - account |
httpConnectTimeout | Hive 프로토콜 통신 시 Connect 타임아웃 시간(초) 설정(기본값 사용 권장) | - 8 (디폴트) |
httpReadTimeout | Hive 프로토콜 통신 시 Read 타임아웃 시간(초) 설정(기본값 사용 권장) | - 8 (디폴트) |
maxGameLogSize | 비정형 데이터 파일로 저장하는 게임 로그의 최대 저장 개수 | |
analyticsSendLimit | 로그 전송 주기마다 전송할 로그의 최대치 | |
analyticsQueueLimit | 쌓을 수 있는 로그의 최대치 | |
analyticsSendCycle | 로그 전송 주기 | |
saveAnalytisLogBeforeCrash | iOS 전용 설정으로, 앱이 NSException 타입 에러 또는 Unix signal 타입 에러 때문에 강제 종료되기 직전 상황을 감지하여 서버에 전송하지 않고 대기중인 애널리틱스 로그를 파일로 저장할지 여부를 설정 |
설정 저장 및 hive_config.xml 파일 생성¶
Unity Hive Config Editor에 있는 모든 탭 설정을 완료한 후 Save & Regenerate setting files를 누르면 hive_config.xml 파일을 자동으로 생성합니다.
Android¶
Save & Regenerate setting files를 누르면 AndroidManifest.xml 파일과 hive_config.xml 파일을 생성합니다. Unity 버전에 따라 hive_config.xml 파일이 생성되는 위치가 다릅니다.
- Unity 2021 이상: <프로젝트_루트>/Assets/HiveSDK/hive.androidlib/src/main/res/raw/hive_config.xml
- Unity 2021 미만: <프로젝트_루트>/Assets/Plugins/Android/res/raw/hive_config.xml
iOS¶
Save & Regenerate setting files를 누르면 Info.plist 파일과 hive_config.xml 파일을 생성합니다. hive_config.xml 파일은 아래 위치에 생성됩니다.
- <앱_프로젝트_경로>/Assets/Plugins/iOS/hive_config.xml
Windows¶
Windows 버튼을 누르면 hive_config.xml 파일을 생성합니다. hive_config.xml 파일은 아래 위치에 생성됩니다.
- <앱_프로젝트_경로>/Assets/Plugins/Windows/res/hive_config.xml
2. 수동 설정¶
만약 Unity Hive Config Editor를 사용하지 않으면, hive_config.xml 파일을 생성한 후, 파일에 있는 값 대부분을 수동으로 설정해야 합니다.
hive_config.xml 파일 생성¶
hive_config.xml 파일을 아래 경로에 직접 생성합니다.
- Android
- Unity 2021 이상: <프로젝트_루트>/Assets/HiveSDK/hive.androidlib/src/main/res/raw/hive_config.xml
- Unity 2021 미만: <프로젝트_루트>/Assets/Plugins/Android/res/raw/hive_config.xml
- iOS
- <앱_프로젝트_경로>/Assets/Plugins/iOS/hive_config.xml
- Windows
- <앱_프로젝트_경로>/Assets/Plugins/Windows/res/hive_config.xml
hive_config.xml 수정¶
다음을 참고해 hive_config.xml 파일을 직접 수정 후 저장합니다. 단, 파일 내 일부 값들은 개발사 필요에 따라 설정합니다.
hive_config.xml 파일 예시¶
아래는 인증(Google 인증), 결제(Google Play Store 또는 Apple AppStore)를 사용할 때 hive_config.xml 파일 예시입니다. 사용하려는 Hive SDK 기능과 앱 환경에 맞게 값을 변경, 추가, 삭제 후 사용하세요. iOS는 Apple AppStore 결제만 지원하므로, 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>
<!-- 약관 노출 디자인 설정 (SDK v4는 설정하지 않음)
(true, false) -->
<!-- <authV1Agreement>device</authV1Agreement> -->
<!-- 프로모션 UA 공유하기 시 미노출할 공유앱 설정 (Android Only) -->
<unsupportedUAShareType>
<value>SMS</value>
<value>URL</value>
</unsupportedUAShareType>
<!-- Hive SDK 내부에서 사용되는 HTTP Connect Timeout 시간을 초단위로 설정
(특별한 경우가 아니면 변경 금지) -->
<httpConnectTimeout>8</httpConnectTimeout>
<!-- Hive SDK 내부에서 사용되는 HTTP Read Timeout 시간을 초단위로 설정
(특별한 경우가 아니면 변경 금지) -->
<httpReadTimeout>8</httpReadTimeout>
<!-- Hive SDK 공통 설정: END -->
<!-- Hive SDK 애널리틱스 설정: START -->
<!-- 애널리틱스 설정, 애널리틸스 사전 설정하기 가이드 참고 -->
<!-- Hive SDK 애널리틱스 설정: END -->
<!-- Hive SDK 기능별 설정: START -->
<providers>
<!-- 인증 제품을 설정, 인증 사전 설정하기 가이드 참고 -->
<!-- 빌링 제품을 설정, 빌링 사전 설정하기 가이드 참고 -->
<!-- 마케팅 어트리뷰션 제품을 설정, 마케팅 어트리뷰션 사전 설정하기 가이드 참고 -->
</providers>
<!-- Hive SDK 기능별 설정: END -->
</properties>
Info
Hive SDK 설정은 앱 빌드 전에 설정 파일에 값을 저장하거나, 런타임(앱 실행) 중에 설정값을 변경할 수 있습니다. 자세한 내용은 Hive SDK 설정을 확인하세요.