Android
Android용 SDK에서 프로모션을 사용하기 위한 설정을 안내합니다.
사용할 라이브러리 추가¶
모듈 수준 build.gradle 파일에 프로모션을 사용하기 위한 외부 라이브러리를 추가합니다. 아래는 build.gradle 예시입니다.
dependencies {
// Promotion
implementation "com.com2us.android.hive:hive-promotion"
// Promotion 구글 앱 내 리뷰
implementation "com.com2us.android.hive:hive-promotion-google-inappreview"
// Promotion 동영상 기능을 상용할 경우 추가합니다.
implementation "com.com2us.android.hive:youtube-helper"
}
딥링크 사용하기¶
딥링크는 이용자를 앱 실행 후 앱 특정 위치로 이동시키는 링크입니다. 프로모션 유저 인게이지먼트에서 딥링크 스킴에 대한 처리를 지원합니다. 딥링크를 사용하려면 AndroidManifest.xml에 아래 내용을 추가합니다.
<manifest>
<activity android:name="YOUR_MAIN_ACTIVITY">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="${applicationId}" />
</intent-filter>
</activity>
</manifest>
UA 디퍼드 딥링크 사용하기¶
UA 디퍼드 딥링크는 유저에게 초대 보상을 지급하도록 제공되는 초대 코드 링크(URL)로, 아래와 같은 두가지 방식으로 동작합니다.
- 유저가 게임 앱을 설치한 경우, 유저가 링크를 클릭하면 게임 앱 실행 및 앱 내 특정 위치로 이동시킨 후 초대 보상을 지급합니다.
- 유저가 게임 앱을 설치하지 않은 경우, 유저가 링크를 클릭하면 유저를 게임 앱을 설치하도록 마켓플레이스로 이동시킨 후, 게임 앱을 설치 및 실행하면 초대 링크의 포함 식별자 정보를 통해 초대 보상을 지급합니다.
디퍼드 딥링크를 사용하려면 AndroidManifest.xml에 아래 내용을 추가합니다.
<activity
android:name="com.hive.userengagement.DeferredDeeplinkActivity"
android:exported="true">
<!-- 샌드박스 서버에서 사용 시 추가 -->
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="sandbox-promotion.qpyou.cn"
android:pathPattern="/deeplink/${applicationId}/vid/.*" />
</intent-filter>
<!-- 상용 서버에서 사용 시 추가 -->
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="promotion.qpyou.cn"
android:pathPattern="/deeplink/${applicationId}/vid/.*" />
</intent-filter>
</activity>
디퍼드 딥링크는 Android에서 Google Play 스토어만 지원하고 있습니다. 유저 에퀴지션(UA)을 통해 친구 초대 링크를 공유하고자 하는 경우 설정하세요. 기존 방식과 디퍼드 딥링크 방식 중 자유롭게 사용 가능합니다.
디퍼드 딥링크를 사용한 유저 에퀴지션(UA) 기능의 동작 순서는 다음과 같습니다.
- A 유저가 UA 초대 링크를 통해 디퍼드 딥링크 형태의 링크를 공유
- 초대 링크를 공유 받은 B 유저가 해당 링크를 통해 앱에 접속할 경우 서버는 링크 정보를 분석하여 B가 A의 초대를 받아 게임을 진행하였음을 확인: 보상을 위한 정보 획득
- B 유저의 단말기에 앱이 설지되지 않은 경우에는 앱 설치를 유도하고, 이미 앱을 설치한 경우에는 앱을 실행하여 A 유저와 B 유저의 정보를 프로모션 서버로 전달
Note
디퍼드 딥링크는 링크를 터치한 유저의 단말기에 앱 설치를 유도하며 설치 직후 앱을 실행하면 링크의 정보를 전달합니다.
다이렉트 링크 사용하기¶
다이렉트 링크는 사용자가 클릭했을 때 (게임 앱을 설치 후) 게임 앱 내 특정 위치로 이동시키거나, 특정 웹뷰를 노출하여 유저 참여를 유도하는 URL입니다.
다이렉트 링크를 통해 사용자가 이동하는 목적지 주소는 하이브 콘솔 > 다이렉트 링크 관리에서 설정하며, 마켓플레이스, 게임 앱 내 특정 위치(딥링크), 특정 웹뷰와 같은 다양한 목적지를 유저의 OS 환경에 맞추어 유연하게 설정할 수 있습니다.
다이렉트 링크를 적용했을 때 게임 앱과 연동한 동작 순서는 아래와 같습니다.
- 다이렉트 링크를 다양한 목적지 링크로 공유 (마켓 링크, 딥링크, 웹 URL)
- 유저가 다이렉트 링크를 클릭 시, 하이브 콘솔 > 다리렉트 링크 관리에서 설정한 목적지에 따라 아래와 같이 동작
- 마켓 이동 : 유저의 게임 앱 설치 상태와 관계 없이 하이브 콘솔 > 다이렉트 링크 관리에서 설정한 마켓 링크로 이동
- 앱 내 이동(딥링크)
- 유저 환경에 게임 앱이 설치되어 있는 경우: 개임 앱 내 지정된 위치(스킴 딥링크)도 이동
- 유저 환경에 게임 앱이 설치되어 있지 않은 경우: 유저의 각 OS 환경에서 지원하는 마켓의 게임 앱 설치 위치 혹은 딥링크 생성 시 설정한 미설치자 이동 URL 로 이동
- 웹 URL : 유저의 게임 앱 설치 상태와 관계 없이, 게임 외부의 특정 웹뷰로 이동
- 유저가 '게임 앱 실행 > 로그인 > 유저 참여(UE) SetReady 동작' 순서로 진행하면 게임 앱에서는 링크 정보에 포함된 이벤트가 실행됨(관련 기능 수행 또는 UI 노출, UE에 정의한 커스텀 기능 수행 등)
Warning
유저 환경에 게임 앱이 설치되어 있지 않은 경우, Hive SDK 버전에 띠른 다이렉트 링크 동작에 관한 주의 사항은 아래와 같습니다.
- Hive SDK v4 25.10.0 미만
- 다이렉트 링크를 클릭한 유저의 단말기에 게임 앱 설치를 유도하나, 설치 직후 바로 개임 앱울 실행하면 다이렉트 링크 정보가 전달되지 않습니다.
- 게임 앱 설치가 완료된 후 다이렉트 링크를 다시 클릭하면 게임 앱 실행과 동시에 다이렉트 링크 정보가 게임 앱에 전달됩니다. 이후 이벤트가 수행됩니다.
- Hive SDK v4 25.10.0 이상
- 다이렉트 링크를 클릭한 유저의 단말기에 게임 앱 설치를 유도하고, 설치 직후 바로 게임 앱을 실행하면 다이렉트 링크는 아래와 같이 두가지 방식으로 동작합니다.
- 게임 앱에서는 다이렉트 정보 획득을 위해 Hive SDK의 프로모션 서버와 통신합니다. 프로모션 서버는 다이렉트 링크를 최초 클릭한 유저의 단말 이력과 통신 정보를 확인하여 적절한 다이렉트 링크 정보를 게임 앱에 클라이언트에 전달합니다. 이후 이벤트가 수행됩니다.
- 게임 앱 설치가 완료된 후 다이렉트 링크를 다시 클릭하면 게임 앱 실행과 동시에 다이렉트 링크 정보가 게임앱에 전달됩니다. 이후 이벤트가 수행됩니다.
- 다이렉트 링크를 클릭한 유저의 단말기에 게임 앱 설치를 유도하고, 설치 직후 바로 게임 앱을 실행하면 다이렉트 링크는 아래와 같이 두가지 방식으로 동작합니다.
Android 타겟 Hive SDK에서 다이렉트 링크 기능을 적용하려면 AndroidManifest.xml에 아래 내용을 추가합니다.
<manifest>
<activity android:name="YOUR_MAIN_ACTIVITY">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="${applicationId}.directlink" />
</intent-filter>
</activity>
</manifest>