Iterable과 앱스플라이어의 연동

한눈에 보기: 원링크 기반 어트리뷰션 링크를 Iterable 시스템과 연동하여 이메일에서 딥링크를 생성해 보세요. 이 연동에서는 브랜드 클릭 기록 도메인 위에 유니버설 링크에 대한 Iterable의 지원을 활용합니다. 

iterable-af-logo.png

소개

ESP(이메일 서비스 제공업체)는 세분화된 사용자 트래픽을 위한 훌륭한 소스가 될 수 있습니다.

ESP의 문제점 중 하나는 딥링킹 기능을 그대로 유지하면서 클릭 수를 기록하는 것입니다. ESP는 딥링킹 URL을 자체 ESP의 클릭 기록 도메인으로 래핑합니다. 이 절차는 때때로 iOS 유니버설 링크 프로세스를 중단시킵니다.

클릭 기록 도메인 위에 유니버설 링크를 지원하는 Iterable을 사용하면 딥링킹과 클릭 기록을 계속 수행할 수 있습니다.

선행 조건

iOS Android
  • 앱스플라이어 iOS SDK 버전 4.9.0

Iterable 설정

1단계: Iterable에서 링크 브랜딩 설정하기

전용 클릭 기록 도메인을 만들고 하위 도메인을 설정합니다(예: click.example.com). 이는 지정된 도메인을 구매하거나 자체 도메인을 사용하여 수행할 수 있습니다.

Iterable로 클릭 기록 도메인을 설정하는 방법에 대한 자세한 내용은 여기를 참조하세요.

2단계: Iterable에 SSL 인증서 업로드하기

클릭 기록 도메인에 도메인의 SSL 인증서를 포함해야 합니다. SSL 인증서는 Iterable 계정에 설치되어 있어야 합니다. SSL 인증서 설치에 대한 지침은 여기에서 확인할 수 있습니다.

2단계: Iterable에 AASA(iOS) 및 에셋 링크 파일(Android)을 제공합니다.

iOS용 AASA

Iterable이 iOS 유니버설 링크를 지원하려면 AASA 파일이 필요합니다. 다음 설명을 참조하십시오.

유니버설 링크로 원링크를 설정하면 이미 원링크와 연결된 AASA가 있습니다. AASA를 받으려면:

  1. 원링크 템플릿으로 이동하여 유니버설 링크로 구성된 원링크를 찾습니다.
  2. 원링크 URL 끝에 /.well-known/apple-app-site-association을 추가합니다.
  3. 브라우저 주소 표시줄에 원링크를 붙여넣고 Enter 키를 누릅니다. 예: <OneLinkSubdomain>.onelink.me/.well-known/apple-app-site-association. 이렇게 하면 AASA 파일이 컴퓨터에 다운로드됩니다. 간단한 텍스트 편집기를 사용하여 열 수 있습니다.
  4. 링크 다시 쓰기 규칙을 정의합니다. 더 자세한 정보는 여기를 참고하십시오.
  5. 이 AASA 파일을 Iterable로 보냅니다. 자세한 내용과 이 파일의 내용에 대한 자세한 내용은 Iterable 가이드를 참조하세요.

Android용 자산 링크

앱 링크로 원링크를 설정할 때, 원링크와 연결된 에셋 링크 파일이 이미 있습니다. 자산 링크 파일을 가져오려면:

  1. 원링크 템플릿으로 이동하여 앱 링크로 구성된 원링크를 찾습니다.
  2. 원링크 URL 끝에 /.well-known/assetlinks.json을 추가합니다.
  3. 브라우저 주소 표시줄에 원링크를 붙여넣고 Enter 키를 누릅니다. 예:<OneLinkSubdomain>.onelink.me/.well-known/assetlinks.json. 이렇게 하면 자산 링크 파일이 컴퓨터에 다운로드됩니다. 간단한 텍스트 편집기를 사용하여 열 수 있습니다.
  4. 이 애셋 링크 파일을 Iterable로 보냅니다. 자세한 내용과 이 파일의 내용에 대한 자세한 내용은 Iterable 가이드를 참조하세요.

앱 설정

앱 및 유니버설 링크를 지원하도록 앱을 설정하려면 다음을 참조하세요.

Android에 대한 1단계: 앱 링크를 지원하도록 앱 설정

1단계: Android 매니페스트의 활동에 클릭 도메인 추가

Android 매니페스트에서 클릭 도메인 호스트와 딥링크하려는 활동의 활동 태그에 접두사를 추가합니다.

<activity android:name=".DeepLinkActivity">
    <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="click.example.com"
               android:pathPrefix="/campaign" />
     </intent-filter>
</activity>

2단계: 클릭 도메인을 확인하도록 앱 설정

SDK는 캠페인 세부 정보를 얻기 위해 클릭 도메인 뒤에 있는 원링크를 확인해야 합니다. 세부 정보는 onAppOpenAttribution 메서드를 통해 반환됩니다.

클릭 도메인을 확인하는 방법:

  1. SDK 버전이 4.9.0 이상인지 확인합니다.
  2. SDK API setResolveDeepLinkURLs에 클릭 도메인을 나열합니다. 이 API는 SDK 초기화 전에 호출해야 합니다. 자세한 내용은 여기에서 SDK 설명서를 참조하세요.
    AppsFlyerLib.getInstance().setResolveDeepLinkURLs("click.example.com");

iOS에 대한 1단계: 유니버설 링크를 지원하도록 앱 설정

이 섹션에서는 유니버설 링크를 지원하도록 앱을 설정하는 방법을 설명합니다.

1단계: Xcode에서 클릭 도메인 연결

  1. Xcode에서 프로젝트를 클릭합니다.
  2. 기능을 클릭합니다.configure-xcode-deeplinking-domain.png
  3. 연결된 도메인을 켭니다.
  4. + 기호를 클릭하고 클릭 도메인을 추가합니다. 예를 들면 applinks:click.example.com과 같습니다.

딥링크를 확인하도록 SDK 구성을 설정하려면 다음을 참조하세요.

Android에 대한 2단계: 딥링크 확인

SDK는 캠페인 세부 정보를 얻기 위해 클릭 도메인 뒤에 있는 원링크를 확인해야 합니다. 세부 정보는 onAppOpenAttribution 메서드를 통해 반환됩니다.

클릭 도메인을 확인하려면:

  1. SDK 버전이 4.9.0 이상인지 확인합니다.
  2. SDK 속성 resolveDeepLinkURLs에 클릭 도메인을 나열합니다. 이 속성은 SDK 초기화 전에 설정해야 합니다. 자세한 내용은 여기에서 SDK 설명서를 참조하세요.
    AppsFlyerLib.getInstance().setResolveDeepLinkURLs("clickdomain.com", "myclickdomain.com", "anotherclickdomain.com");
    

iOS에 대한 2단계: 딥링크 확인

SDK는 캠페인 세부 정보를 얻기 위해 클릭 도메인 뒤에 있는 원링크를 확인해야 합니다. 세부 정보는 onAppOpenAttribution 메서드를 통해 반환됩니다.

클릭 도메인을 확인하려면:

  1. SDK 버전이 4.9.0 이상인지 확인합니다.
  2. SDK 속성 resolveDeepLinkURLs에 클릭 도메인을 나열합니다. 이 속성은 SDK 초기화 전에 설정해야 합니다. 자세한 내용은 여기에서 SDK 설명서를 참조하세요.
    Objective-C Swift
    [AppsFlyerLib shared].resolveDeepLinkURLs = @[@"example.com",@"click.example.com"];
  3. SDK가 클릭 기록 도메인을 확인할 수 있도록 다음 코드를 추가합니다.
    Objective-C Swift

    AppDelegate.m에 다음 코드를 추가합니다.

    - (NSDictionary *)allHTTPHeaderFieldsForResolveDeepLinkURL:(NSURL *)URL {
        if ([URL.host  isEqual: @"click.example.com"]) {
            return [NSDictionary dictionary];
        }
        else {
            return nil;
        }
    }

첫 번째 이메일 보내기

  1. 링크 관리 페이지에서(또는 수동으로) 원링크 URL을 만듭니다.
  2. 원링크 URL을 생성할 때 모든 파라미터 값을 URL로 인코딩해야 합니다.
  3. 다음 매개 변수를 사용하는 것이 좋습니다.
    • pid(미디어 원본) - 이 사용을 나타내는 미디어 원본(예: 이메일)을 사용합니다.
    • c (campaign) - 측정하려는 캠페인의 이름입니다.
    • af_dp - 사용자를 딥링크하려는 딥링크 URI 체계입니다.
    • af_web_dp - 데스크톱에서 링크를 클릭하는 사용자를 리디렉션하는 위치입니다.
    • af_ios_url - iOS 장치에서 링크를 클릭하는 앱이 없는 사용자를 리디렉션하는 위치입니다.
    • af_android_url - 앱이 없는 사용자를 리디렉션할 위치: Android 기기에서 링크를 클릭합니다.
  4. Iterable에서 생성한 이메일에 원링크 URL을 입력합니다. 예:
    <a href="greatapp.onelink.me/abcd/1234567">Download my great app!</a>
    이 단계에서 Iterable은 위의 링크를 이전 단계에서 설정한 클릭 도메인으로 래핑합니다. 시나리오 : 세 개의 클릭 도메인이 귀하의 원링크 https://mysubdomain.onelink.me/abCD로 리디렉션됩니다. 앱이 사용자의 기기에 설치되어 있는 경우 클릭 도메인은 앱에 딥 링크됩니다.

 예시

URL 매개변수는 가독성을 위해 이 예제에서 URL로 인코딩되지 않습니다.

https://greatapp.onelink.me/abcd?pid=Email&c=Spring_Newsletter&is_retargeting=true&
af_dp=testapp://path/to/content&af_web_dp=https://www.example.com/path/to/content&
af_ios_url=https://www.example.com/path/to/content&af_android_url=https://www.example.com/path/to/content

링크 테스트

위에서 언급한 모든 필수 단계를 수행하고, 적절한 원링크 URL을 생성하고, 이를 이메일에 넣은 후, 자신에게 테스트 이메일을 보냅니다.

무엇을 기대할 수 있을까요?

앱이 설치되어 있는 경우 앱을 호출해야 합니다. 관련 앱스플라이어 SDK 딥링킹 API가 구현된 경우 관련 콘텐츠에 딥링크되어야 합니다.
또한 클릭은 제공된 미디어 소스 및 캠페인에 어트리뷰션된 앱스플라이어 대시보드와 Iterable 데이터 모두에 나타나야 합니다.