adjust-icon

디퍼드 딥링크 설정

디퍼드 딥링킹을 사용하면 앱을 설치하지 않은 사용자가 Adjust 링크를 클릭하여 앱 스토어에서 앱을 설치한 후, 처음 앱을 열 때 원하는 콘텐츠로 이동할 수 있습니다.

작동 방식

다음은 디퍼드 딥링킹의 기본 흐름입니다.

  1. 사용자가 Adjust 딥링크를 클릭합니다.

  2. Adjust 서버가 사용자를 앱 스토어로 리다이렉트합니다.

  3. 사용자가 앱을 설치 또는 재설치하고, 실행합니다.

  4. Adjust SDK가 /session 요청과 /attribution 요청을 Adjust 서버로 전송합니다.

  5. Adjust 서버가 클릭을 설치 또는 재설치와 매칭하고, 다음 응답 중 하나에서 디퍼드 딥링크를 SDK에 반환합니다.

    Adjust SDK는 디퍼드 딥링크 콜백을 통해 디퍼드 딥링크를 앱에 전달합니다.

  6. 해당되는 경우, 앱은 온보딩 화면과 사용자 로그인 화면 같은 초기 화면을 표시합니다.

  7. 앱이 딥링크를 처리하여 적절한 화면으로 이동합니다.

사용자가 Adjust 브랜드 링크(brandname.go.link)를 클릭하고 링크가 디퍼드되면 Adjust 서버는 Adjust 대시보드의 iOS 플랫폼 설정에서 구성된 APP SCHEME을 사용하여 해당 링크를 APP SCHEME 형식(example://)으로 변환한 후 Adjust SDK로 전달합니다.

설정

  1. AppDelegate에서 AdjustDelegate 프로토콜을 준수합니다. 어트리뷰션 콜백을 이미 구성한 경우 이 단계를 건너뛸 수 있습니다.
  1. SDK를 초기화하기 전에 Adjust 구성에서 AppDelegate를 델리게이트로 지정합니다.
  1. 앱 델리게이트에 adjustDeferredDeeplinkReceived 콜백 메서드를 추가합니다. Adjust SDK는 디퍼드 딥링크를 수신한 후 이 메서드를 호출합니다.

반환 값 옵션

adjustDeferredDeeplinkReceived의 반환 값에 따라 콜백 코드가 실행된 후 발생하는 작업이 결정됩니다.

false 반환(가장 일반적)

앱에서 디퍼드 딥링크를 처리하는 시점과 방법을 완전히 제어하려면 이 접근 방식을 사용하세요. false를 반환하면 Adjust SDK는 디퍼드 딥링크를 열려고 시도하지 않습니다. 예를 들어, 앱이 초기 화면(예: 온보딩 또는 로그인)을 표시하고 넘어간 후 디퍼드 딥링크를 처리해야 하는 경우 이 접근 방식이 적합합니다.

반환 true

콜백 코드가 실행된 직후 Adjust SDK가 디퍼드 딥링크를 열도록 하려면 이 접근 방식을 사용합니다. 예를 들어, 앱에 초기 화면이 없는 경우 이 접근 방식이 적합합니다.

Adjust SDK가 디퍼드 딥링크를 수신하면 콜백 코드가 실행되고, Adjust SDK가 디퍼드 딥링크로 application(_:open:options:)을 호출하면 iOS는 앱 설정에 따라 적절한 처리기로 라우팅합니다.

앱 구현처리기
AppDelegate를 사용하는 UIKitapplication(_:open:options:)
SceneDelegate를 사용하는 UIKitscene(_:openURLContexts:)
SwiftUI.onOpenURL 수정자

위의 적절한 처리기에서 딥링크를 처리하려면 다이렉트 딥링킹을 이미 구현했는지 확인하세요.

전체 코드 예제

본 예시는 온보딩 프로세스가 있는 앱이 디퍼드 딥링크를 어떻게 처리하는지 보여줍니다. 앱의 내부 흐름을 요약하면 다음과 같습니다.

  1. 사용자가 앱을 실행하고, 디퍼드 딥링킹이 적용됩니다.

  2. 앱이 온보딩 프로세스를 시작합니다.

  3. 앱의 콜백은 Adjust SDK로부터 디퍼드 딥링크를 수신하고, 온보딩 프로세스가 완료되었는지 확인합니다.

    • 온보딩이 완료되면 즉시 딥링크를 처리합니다.
    • 온보딩이 완료되지 않은 경우 딥링크를 저장합니다.
  4. 온보딩이 완료되면 앱은 저장된 모든 디퍼드 딥링크를 확인하고 처리합니다.

  5. 앱이 사용자를 딥링크 화면으로 이동시킵니다.

AppDelegate

AppDelegate에 대한 디퍼드 딥링킹 업데이트는 강조 표시된 코드에 있습니다. 이 예제는 UIKit 및 SwiftUI 예제 모두에 적용됩니다.

UIKit

SwiftUI