콘텐츠로 이동

iOS

Hive SDK iOS에서 프로모션 기능을 사용하기 위한 설정을 안내합니다.

프레임워크 추가

프로젝트 디렉토리의 Podfile에 프레임워크를 추가합니다.

pod 'HivePromotion', $HIVE_SDK_VERSION # 프로모션 기능 사용을 위한 프레임워크

위와 같이 프레임워크를 추가한 Podfile을 저장한 후, 아래 명령어를 실행하여 프로젝트에 프레임워크를 설치합니다.

pod install

딥링크 사용하기

딥링크는 유저가 앱 실행하면 앱 특정 위치로 이동시키는 링크입니다. 프로모션 유저 인게이지먼트에서 딥링크 스킴에 대한 처리를 지원합니다.

  1. Xcode 프로젝트 창의 프로젝트 네비게이터에서 여러분의 프로젝트를 선택하세요.
  2. TARGETS 목록에서 여러분의 앱을 선택하세요.
  3. Info 탭을 클릭하세요.
  4. Info 탭 안의 URL Types 항목을 클릭하세요.
  5. + 아이콘을 클릭하여 Additional url type properties 항목을 생성하세요.
  6. Additional url type properties 항목 아래 Identifier 필드와 URL Schemes 필드에 여러분의 AppID를 입력하세요.

아래의 코드로 HTML 페이지를 생성 후 게임이 설치된 앱에서 해당 페이지를 띄우는 방식으로 URL Scheme 동작을 테스트 할 수 있습니다. 단, 링크의 주소는 딥링크 설정 시 설정한 URL과 동일한 값이어야 합니다.

<a href="com.com2us.myapp://">TEST</a>

유니버설 링크 사용하기

유니버설 링크를 사용하면 초대 페이지를 통한 앱 최초 설치 및 실행, 초대자 보상을 할 수 있습니다. Hive SDK iOS애서는 URI Scheme 기반 디퍼드 딥링크와 Universal Link 기반 디퍼드 딥링크를 모두 지원합니다.

공통 설정

유니버설 링크를 사용하기 위한 공통 설정을 설명합니다.

서버 설정

  1. 아래 나열된 값을 긱 환경에 맞게 작성하여 apple-app-site-association 파일로 저장합니다.
    • TEAM ID: Apple 개발자 콘솔에서 조회한 TEAM ID
    • Bundle Identifier: Universal Link를 사용하려는 앱의 번들 ID
    • URL Path: Universal Link를 지원할 HTTP URL
  2. apple-app-site-association 파일을 웹 서버의 루트, 또는 .well-known의 서브 경로에 업로드합니다. apple-app-site-association 파일 형식은 JSON으로, 확장자를 만들지 않습니다.

    apple-app-site-association 파일 예시는 아래와 같습니다.

    {
        "applinks": {
                "apps": [],
                "details": [
                        {
                                "appID": "--TEAM ID.--Bundle Identifier",
                                "paths": ["--URL Path"]
                        }
                ]
        }
    }
    

    Apple에서 제공한 apple-app-site-association 파일 예시는 아래와 같습니다.

    {
        "applinks": {
                "apps": [],
                "details": [
                        {
                                "appID": "9JA89QQLNQ.com.apple.wwdc",
                                "paths": ["/wwdc/news/", "/videos/wwdc/2015/*"]
                        }, {
                                "appID": "ABCD1234.com.apple.wwdc",
                                "paths": ["*"]
                        }
                ]
        }
    }
    

iOS 앱 설정하기

Xcode 프로젝트에서 아래의 순서로 iOS 앱을 설정합니다.

  1. Xcode 프로젝트 네비게이터에서 유저 프로젝트를 선택합니다.
  2. TARGETS 목록에서 유저 앱을 선택힙니다.
  3. Signing & Capabilities 탭을 클릭합니다.
  4. Signing & Capabilities 탭 좌측 상단에 있는 + Capability 버튼을 클릭합니다.
  5. 목록에서 Associated Domains를 선택해 추가합니다.

    applinks:[apple-app-site-association]가 업로드된 도메인 예시: applinks:hive-ota.withhive.com
    6. Apple 개발자 콘솔에서 앱의 Capabilities에 Associated Domain을 활성화합니다.

디퍼드 딥링크 사용하기

디퍼드 딥링크를 사용하면 유니버설 링크 기반의 초대 링크 실행과 초대자 보상을 할 수 있습니다.

디퍼드 딥링크를 사용하려면 UIPasteboard 붙여넣기 시스템 권한이 필요하며 디퍼드 딥링크 형태의 초대 링크는 아래와 같이 동작합니다.

  • 초대받은 유저가 초대 링크로 앱을 최초 설치 및 실행 시 iOS 16.1 미만에서는 토스트 팝업이, iOS 16.1 이상에서는 시스템 권한 요청 팝업이 노출될 수 있습니다.
    • 시스템 권한 요청 팝업을 노출하지 않으려면 콘솔 가이드의 프로모션 설정을 참고하여 디퍼드 딥링크 설정을 미사용으로 선택하세요.

      iOS 16.1 미만

      iOS 16.1 이상
Note

유니버설 링크 기반의 초대자 링크 생성을 위한 추가 콘솔 설정은 콘솔 가이드 > 프로모션 > 초대 캠페인 등록 및 관리를 참고하세요.
시스템 권한 요청 팝업의 문구는 개발자가 임의로 수정할 수 없습니다.


Xcode 프로젝트 설정

디퍼트 딥링크 사용을 위해 아래와 같이 Xcode 프로젝트를 설정합니다.

  1. Xcode 프로젝트의 메인 TARGETS 을 선택합니다.
  2. Signing & Capabilities 탭의 Associated Domains 항목에서 아래와 같이 Domains를 설정합니다.

    • applinks:sandbox-promotion.qpyou.cn: Hive 샌드박스 서버 환경에서 동작하는 Universal Link 도메인
    • applinks:promotion.qpyou.cn: Hive 상용 서버 환경에서 동작하는 Universal Link 도메인

hive_config.xml 설정하기

디퍼트 딥링크 사용을 위해 SDK 내 hive_config.xml 파일에 아래의 코드을 추가합니다.

<universalLink>Universal link 주소(Domain/Path) </universalLink>

다이렉트 링크 사용하기

다이렉트 링크는 하나의 URL 링크로 제공되며, 다이렉트 링크로 유저 애퀴지션(UA)의 초대 링크 기능 및 유저 인게이지먼트(UE, 딥링크) 기능을 수행할 수 있습니다.

다이렉트 링크를 사용한 Hive 유저 에퀴지션(UA)Hive 유저 인게이지먼트(UE) 기능의 동작 순서는 다음과 같습니다.

  1. A 유저가 UA 초대 링크를 통해 다이렉트 링크 형태의 링크를 공유
  2. 초대 링크를 공유 받은 B 유저가 해당 링크를 통해 앱에 접속할 경우 서버는 링크 정보를 분석하여 B가 A의 초대를 받아 게임을 진행하였음을 확인: 보상을 위한 정보 획득
  3. B 유저가 앱에 접속 직후 링크 정보에 포함된 UE 동작이 수행됨 (Hive 관련 기능 수행 또는 UI 노출, 게임 앱이 UE에 정의한 커스텀 기능 수행 등)
  4. B 유저의 단말기에 앱이 설치되지 않은 경우에는 앱 설치를 유도하고, 이미 설치한 경우에는 앱을 실행하여 A 유저와 B 유저의 정보를 프로모션 서버로 전달

    Note

    앱이 설치되지 않은 경우, 다이렉트 링크 사용 시 주의 사항은 아래와 같습니다.

    • 다이렉트 링크는 링크를 클릭한 유저의 단말기에 앱 설치를 유도하나, 설치 직후 앱을 곧바로 실행하면 다이렉트 링크 정보가 전달되지 않습니다.
    • 앱 설치가 된 후 다이렉트 링크를 다시 클릭하여 실행해야 앱 실행과 동시에 다이렉트 링크 정보가 전달됩니다.

다이렉트 링크를 사용하려면 콘솔 가이드의 프로모션 설정하기를 참고하여 콘솔에 다이렉트 링크를 설정해야 합니다. 또한 Xcode 프로젝트 설정 이 필요합니다.

Xcode 프로젝트 설정

다이렉트 링크 사용을 위해 아래와 같이 Xcode 프로젝트를 설정합니다.

  1. Xcode 프로젝트의 메인 TARGETS 을 선택합니다.
  2. Signing & Capabilities 탭의 Associated Domains 항목에서 아래와 같이 Domains를 설정합니다.

    • applinks:sandbox-direct-link.withhive.com: Hive 샌드박스 서버 환경에서 동작하는 다이렉트 링크 기능의 Universal Link 도메인
    • applinks:direct-link.withhive.com: Hive 상용 서버 환경에서 동작하는 다이렉트 링크 기능의 Universal Link 도메인