딥링크 플랜 - Android SDK (v4)

에어브릿지 안드로이드 SDK를 설치하고 필요한 설정을 추가할 수 있습니다.

안드로이드 SDK 설치하기

에어브릿지 안드로이드 SDK는 아래 방법으로 설치할 수 있습니다. 설치한 이후에 안드로이드 SDK 테스트로 SDK가 정상적으로 설치됐는지 확인할 수 있습니다.

디바이스 ID를 수집하지 않는 SDK

알립니다

일반 SDK와 제한된 SDK 중에서 1가지 버전만 설치해 주세요.

정책, 환경 등에 따라 GAID, IDFA 같은 디바이스 ID 수집에 제한이 필요할 수 있습니다. 제한된 SDK(Restricted SDK)를 설치하면 에어브릿지 SDK가 GAID, IDFA 같은 디바이스ID를 수집하지 않습니다.

아래 방법에 따라 제한된 SDK를 설치해 주세요.

SDK 초기화하기

에어브릿지 안드로이드 SDK를 Android Application class 내에서 초기화하는 것을 권장합니다.

1. Application class를 생성합니다.

12345678
import android.app.Application

class AndroidApplication: Application() {

    override fun onCreate() {
        super.onCreate()
    }
}

2. 생성된 Application 을 AndroidManifest.xml에 설정합니다.

AndroidManifest.xml
123
 <application
        android:name=".AndroidApplication"
        ...>

3. Application class에서 Airbridge 를 가져옵니다.

1
import co.ab180.airbridge.Airbridge

4. AndroidManifest.xml에서 등록한 Application class 파일에 아래 코드를 추가합니다.

YOUR_APP_NAME과 YOUR_APP_SDK_TOKEN은 에어브릿지 대시보드의 [설정]>[토큰 관리]에서 확인할 수 있습니다.

12345678
override fun onCreate() {
    super.onCreate()
    // YOUR_APP_NAME: input your app name
    // YOUR_APP_SDK_TOKEN: input your app token
    val option = AirbridgeOptionBuilder("YOUR_APP_NAME", "YOUR_APP_SDK_TOKEN")
        .build()
    Airbridge.initializeSDK(this, option)
}

주의하세요

initalizeSDK 함수를 Application 클래스의 onCreate 시점에 호출해야 올바르게 동작합니다.

5. 아래 권한을 설정합니다.

딥링크

딥링크를 설정하면 트래킹 링크가 있는 광고를 클릭한 유저를 원하는 앱의 특정 페이지로 이동시킬 수 있습니다. 또한 트래킹 링크로 수집된 정보를 바탕으로 딥링크를 통해서 발생한 성과를 에어브릿지에서 확인할 수 있습니다.

에어브릿지의 딥링크 작동 방식

에어브릿지는 트래킹 링크를 생성하면서 유저의 이동에 사용하는 스킴 딥링크(Scheme Deeplink)를 환경에 따라 최적의 에어브릿지 딥링크(Airbridge Deeplink)로 자동 선택해 활용합니다.

예시)

  • 에어브릿지 딥링크: https://YOUR_APP_NAME.airbridge.io/~~~

  • 스킴 딥링크: YOUR_SCHEME://product/12345

앱이 설치된 상태에서는 유저가 트래킹 링크를 열면 에어브릿지 딥링크로 앱이 열립니다. 에어브릿지 SDK가 해당 에어브릿지 딥링크를 트래킹링크에 설정된 스킴 딥링크로 변환합니다. 변환된 스킴 딥링크는 앱에 전달됩니다.

앱이 설치되어 있지 않은 상태에서는 유저가 트래킹 링크를 열면 에어브릿지 딥링크를 저장합니다. 앱스토어 또는 웹 사이트로 이동한 후에 앱이 설치된 이후 실행되면 에어브릿지 SDK가 저장된 에어브릿지 딥링크를 스킴 딥링크로 변환합니다. 변환된 스킴 딥링크는 앱에 전달됩니다.

딥링크 설정하기

딥링크를 설정합니다. 에어브릿지 대시보드에서 설정한 정보와 유저가 이동하는 목적지로 사용되는 앱 페이지 주소가 필요합니다.

먼저 에어브릿지에 딥링크 정보를 등록합니다.

에어브릿지에 딥링크 정보를 등록한 후에 앱에 딥링크를 설정해야 합니다. 앱에서 딥링크를 위해 필요한 개발은 아래와 같습니다.

  • 에어브릿지 딥링크로 앱이 실행되도록 설정합니다.

  • 에어브릿지 딥링크로 유저를 이동시킵니다.

아래 내용을 참고해 주세요.

디퍼드 딥링크 설정하기

앱이 설치되지 않은 상태에서 디퍼드 딥링크를 설정한 트래킹 링크를 클릭하면 에어브릿지 딥링크를 저장합니다. 디퍼드 딥링크를 설정하면 에어브릿지 SDK는 아래와 같은 방식으로 딥링크를 획득합니다.

Airbridge.handleDeferredDeeplink 함수는 저장된 에어브릿지 딥링크를 획득한 후에 스킴 딥링크로 변환해 앱에 전달합니다. 변환된 스킴 딥링크를 활용해 유저를 설정한 목적지로 보냅니다.

1234
val isHandled = Airbridge.handleDeferredDeeplink {
    // when app is opened with deferred deeplink
    // show proper content using url
}

Airbridge.handleDeferredDeeplink 함수는 앱이 설치되고 처음으로 호출되었으면 true를 반환하고, 에어브릿지 딥링크 획득을 기다려 스킴 딥링크로 변환해 onSuccess로 전달합니다. 해당 스킴 딥링크를 활용해 유저를 설정한 목적지로 보낼 수 있습니다.

또는 저장된 에어브릿지 딥링크가 없으면 null을 onSuccess 전달합니다. SDK가 초기화되지 않았거나 Airbridge.handleDeferredDeeplink 함수를 처음으로 호출하지 않았다면 false를 전달합니다.

전달되는 스킴 딥링크는 일반적으로 YOUR_SCHEME://... 형태의 URL입니다. 메타 디퍼드 앱 링크(Meta Deferred App Links) 같은 서비스를 이용하면 다른 형태의 URL이 전달될 수 있습니다.

테스트하기

SDK 작동 테스트와 딥링크 테스트로 정상적으로 에어브릿지 SDK와 딥링크가 작동하는지 확인할 수 있습니다.

SDK 작동 테스트하기

설치한 에어브릿지 안드로이드 SDK가 정상적으로 작동하는지 확인해 주세요. 앱 설치 이벤트는 추가 설정 여부와 관계없이 안드로이드 SDK에 수집됩니다.

앱 설치 이벤트 수집 여부 확인하기

앱 설치 이벤트가 안드로이드 SDK로 수집되는지 확인해 주세요. 앱 설치 이벤트는 항상 수집됩니다.

1. 앱을 설치하지 않은 테스트 디바이스를 준비합니다. 또는 테스트하기 전에 앱을 삭제해 주세요.

2. SDK 로그 레벨을 DEBUG로 설정합니다.

12345
// Default log level = Log.INFO
val option = AirbridgeOptionBuilder("YOUR_APP_NAME", "YOUR_APP_SDK_TOKEN")
    .setLogLevel(AirbridgeLogLevel.DEBUG)
    .build()
Airbridge.initializeSDK(this, option)

3. 테스트 디바이스에 앱을 설치합니다. 앱을 설치한 이후 실행을 해야 앱 설치 이벤트가 수집됩니다. 앱을 실행해 주세요.

에어브릿지에서 처음 수집된 실행(Open) 이벤트는 Install로 기록됩니다. 따라서 앱 설치 이벤트가 수집되면 Open은 기록되지 않습니다.

4. 안드로이드 스튜디오 또는 안드로이드 디버그 브릿지(ADB)에서 로그캣(Logcat)을 이용하여 테스트 디바이스의 GAID로 발생한 이벤트의 로그를 확인합니다. Logcat Filter에 tag: Airbridge를 입력합니다. 앱 설치 이벤트가 정상적으로 수집되고 있다면 로그를 아래처럼 확인할 수 있습니다.

  • Send event packets to Airbridge: categories={9161}

  • Send event packets to Airbridge: categories={9163}

로그캣 메시지의 의미는 아래를 참고해 주세요.

5. 충분한 시간이 지나도 로그캣에서 로그가 나타나지 않는다면 SDK 초기화 여부 또는 설정, 네트워크 상태 등을 확인해 주세요.

앱 설치 이벤트가 확인되지 않는 상황이 반복된다면 SDK 로그와 함께 문의하기를 통해 요청해 주세요.

딥링크 테스트하기

아래 과정으로 에어브릿지 안드로이드 SDK에 설정한 딥링크 기능이 정상적으로 작동하는지 확인할 수 있습니다.

사전 확인사항

딥링크를 테스트하기 전에 아래 사항을 설정했는지 먼저 확인해 주세요.

#{"width":"120px"}

#{"width":"240px"}

설명

#{"width":"140px"}

가이드

HTTP 딥링크 (App links) 설정

- 필수로 설정해 주세요.

- 대시보드 설정하기

- 딥링크 설정하기

스킴 딥링크 설정

- 필수로 설정해 주세요.

- 대시보드 설정하기

- 딥링크 설정하기

디퍼드 딥링크 설정

- 자동으로 설정되기 때문에 추가 설정이 필요하지 않습니다.

- 디퍼드 딥링크 설정하기

커스텀 도메인 설정

- 필요하다면 선택적으로 설정해 주세요.

- 대시보드 설정하기

앱 설치

- 디퍼드 딥링크를 테스트하지 않는다면 미리 앱을 테스트 디바이스에 설치해 주세요.

- 디퍼드 딥링크를 테스트한다면 테스트 디바이스에 앱이 설치되지 않아야 합니다. 앱이 설치됐다면 테스트 디바이스에서 앱을 삭제해 주세요.

딥링크 테스트 사이트 활용하기

에어브릿지는 딥링크를 테스트할 수 있는 사이트를 지원합니다. 디퍼드 딥링크를 테스트한다면 테스트 디바이스에서 앱을 삭제해야 합니다.

1. 테스트 디바이스에서 딥링크 테스트 사이트를 접속해 주세요. 아래 QR 코드를 활용하면 바로 접속할 수 있습니다.

2. App Name에 에어브릿지에 등록한 앱 이름을 입력해 주세요. 에어브릿지 대시보드 [설정]>[토큰 관리]에서 확인할 수 있습니다.

특정한 딥링크 주소를 테스트하고 싶다면 Deeplink URL에 스킴 딥링크를 입력합니다. 스킴 딥링크는 {YOUR_SCHEME}://... 형식입니다.

또한 커스텀 도메인을 활용한다면 Custom Domain에 커스텀 도메인도 함께 입력해 주세요.

3. 아래 버튼 중에서 1가지를 클릭합니다. 테스트하는 딥링크 종류에 따라 버튼을 클릭해 주세요.

테스트 디바이스에서 앱이 설치되어 있지 않은 상태에서만 디퍼드 딥링크를 테스트할 수 있습니다.

#{"width":"120px"}

버튼

#{"width":"240px"}

설명

#{"width":"140px"}

예시

Test HTTP Deeplink Type-1

- https://{your_app-name}.abr.ge형식의 HTTP 딥링크를 테스트할 수 있습니다.

https://{your_app-name}.abr.ge/@{your_app-name}/test_sdk?...

Test HTTP Deeplink Type-2

- https://abr.ge형식의 HTTP 딥링크를 테스트할 수 있습니다. Test HTTP Deeplink Type-1 주소 형식이 다릅니다.

https://abr.ge/@{your_app-name}/test_sdk?...

Test Scheme Deeplink

- 스킴(Scheme) 딥링크를 테스트할 수 있습니다.

https://abr.ge/@{your_app-name}/test_sdk?...

Test Deferred Deeplink

- 디퍼드 딥링크를 테스트할 수 있습니다.

https://abr.ge/@{your_app-name}/test_sdk?...

Test Custom Domain Deeplink

- 커스텀 도메인을 테스트할 수 있습니다. 커스텀 도메인을 입력한 경우에만 선택할 수 있습니다.

https://{your_custom_domain}/@{your_app-name}/test_sdk?...

4. 안드로이드 스튜디오 또는 안드로이드 디버그 브릿지(ADB)에서 로그캣(Logcat)을 이용하여 테스트 디바이스의 GAID로 발생한 이벤트의 로그를 확인합니다. Logcat Filter에 tag: Airbridge를 입력합니다. 앱 설치 이벤트가 정상적으로 수집되고 있다면 로그를 아래처럼 확인할 수 있습니다.

  • Send event packets to Airbridge: categories={9162}

  • Send event packets to Airbridge: categories={9163}

  • Send event packets to Airbridge: categories={9168}

에어브릿지 SDK 초기화 과정에서 SDK 로그 레벨을 DEBUG로 설정했다면 네트워크를 통해 전송되는 값을 확인할 수 있습니다.

5. Client request: method={...} 메시지로 header와 body 값이 전송됩니다. 딥링크 테스트 사이트에서 클릭한 버튼에 따라 아래 항목을 추가로 확인해 주세요. 정상적으로 딥링크가 작동하면 모든 항목을 확인할 수 있습니다.

6. 충분한 시간이 지나도 로그캣에서 로그가 나타나지 않는다면 SDK 초기화 여부 또는 설정, 네트워크 상태 등을 확인해 주세요.

앱 설치 이벤트가 확인되지 않는 상황이 반복된다면 SDK 로그와 함께 문의하기를 통해 요청해 주세요.

문제 해결하기

아래를 참고해 문제를 해결할 수 있습니다.

문제 상황

해결 방법

딥링크를 클릭했지만, 앱이 실행되지 않습니다. 또는 설정과 다른 내용이 SDK 로그에서 확인됩니다.

딥링크를 정상적으로 설정했는지 확인해 주세요. 딥링크 설정하기를 참고해주세요.

딥링크를 클릭한 후에 앱이 실행됐지만, 설정한 앱 페이지로 이동하지 않습니다.

onSuccess 함수로 전달된 딥링크 경로에 따라 유저가 이동하도록 직접 구현해야 합니다. 딥링크 설정하기를 참고해주세요.

도움이 되었나요?

더 필요한 내용이 있나요?