adjust-icon

딥링킹

사용자를 앱의 특정 페이지로 이동시키기 위해 딥링크를 생성할 수 있습니다. Adjust SDK는 사용자 기기에 앱이 이미 설치되어 있는지 여부에 따라 다른 로직을 적용합니다.

  • 다이렉트 딥링킹: 사용자 기기에 앱이 이미 설치되어 있는 경우에 사용됩니다. 사용자는 링크가 의도한 페이지로 이동됩니다.
  • 디퍼드 딥링킹: 사용자가 아직 앱을 설치하지 않은 경우에 사용됩니다. 링크는 먼저 사용자를 앱을 설치할 수 있는 스토어 페이지로 이동시킵니다. 사용자가 앱을 설치한 이후에 링크는 의도한 페이지를 엽니다.

SDK는 사용자가 링크를 통해 앱을 실행한 이후에 딥링크 데이터를 읽을 수 있습니다.

딥링크 설정

사용자가 앱을 설치한 경우, 사용자가 딥링크 정보가 포함된 링크를 클릭하면 딥링크가 실행됩니다. Adjust SDK는 앱에서 사용하기 위해 딥링크 정보를 파싱할 수 있는 툴을 포함하고 있습니다.

v4.30부터 SDK는 필요한 설정을 Android 및 iOS 프로젝트에 주입합니다. 딥링크를 구성하려면 Unity Editor 인스펙터 윈도우에서 URL 스킴을 추가하시기 바랍니다.

Unity 에디터 스크린샷

Adjust SDK v4.30 이하 또는 Unity Editor v2019.2 이하(Android에만 해당)를 사용하는 경우, 앱 수준에서 딥링크를 설정해야 합니다. 아래의 플랫폼별 딥링크 설정 가이드 링크를 참조하시기 바랍니다.

iOS에서의 딥링크

iOS 9 이후 버전을 사용하는 기기는 딥링크 실행을 위해유니버설 링크를 사용합니다. 앱에 유니버설 링크 스킴을 추가해야 앱에서 딥링크를 열 수 있습니다. 이를 위해 다음을 설정하시기 바랍니다:

  1. Adjust 대시보드에서 유니버설 링크를 설정합니다.
  2. 앱에 대한 Associated Domains 를 Apple Developer Portal에서 구성합니다.
  3. Unity Editor를 실행합니다.
  4. Adjust prefab의 DEEP LINKING 섹션으로 이동합니다.
  5. iOS Universal Links Domain 필드에 유니버설 링크 또는 링크를 입력합니다. https:// 프로토콜을 다음 항목으로 교체합니다. applinks:

커스텀 URL 스킴 설정

iOS 8 이전 버전을 사용하는 기기는 딥링크 처리를 위해 커스텀 URL 스킴을 사용합니다.

  1. Adjust 대시보드에서 내 딥링크를 설정합니다.
  2. Unity Editor를 실행합니다.
  3. Adjust prefab의 DEEP LINKING 섹션으로 이동합니다.
  4. iOS URL Schemes 필드에 URL 스킴 또는 스킴을 입력합니다. ://을 제외한 스킴만을 입력합니다.

Android에서의 딥링크

Android 기기는 딥링크를 처리하기 위해 고유한 URI 스킴을 사용합니다. 딥링크를 설정하려면 Adjust prefab의 Android URI Schemes 섹션에 스킴을 추가해야 합니다. SDK는 필수 XML 태그를 AndroidManifest.xml에 추가합니다.

Unity prefab 메뉴의 Android URI 스킴 섹션 스크린샷

디퍼드 딥링크

디퍼드 딥링크 비활성화

메서드 서명
public void setLaunchDeferredDeeplink(bool launchDeferredDeeplink);

SDK는 기본 설정에 따라 디퍼드 딥링크를 실행합니다. 이는 setLaunchDeferredDeeplink 인수를 bool 메서드에 전달함으로써 구성할 수 있습니다.

AdjustConfig adjustConfig = new AdjustConfig("{YourAppToken}", AdjustEnvironment.Sandbox);
//...
adjustConfig.setLaunchDeferredDeeplink(true);
//...
Adjust.start(adjustConfig);
메서드 서명
public void setDeferredDeeplinkDelegate(Action<string> deferredDeeplinkDelegate, string sceneName = "Adjust");

디퍼드 딥링크 수신 시 델리게이트 함수를 호출하도록 Adjust SDK를 구성할 수 있습니다. 이 델리게이트 함수는 딥링크를 string 인수로 수신합니다.

private void DeferredDeeplinkCallback(string deeplinkURL) {
//...
}
AdjustConfig adjustConfig = new AdjustConfig("{YourAppToken}", AdjustEnvironment.Sandbox);
adjustConfig.setDeferredDeeplinkDelegate(DeferredDeeplinkCallback);
Adjust.start(adjustConfig);

예시

이 예시에서는 사용자가 디퍼드 딥링크를 열 때 Adjust가 딥링크 주소를 기록하는 방법을 보여줍니다.

private void LogDeepLink(string deepLinkURL) {
Debug.Log("Deeplink URL: " + deeplinkURL);
}
//...
AdjustConfig adjustConfig = new AdjustConfig("{YourAppToken}", AdjustEnvironment.Sandbox);
adjustConfig.setDeferredDeeplinkDelegate(LogDeepLink);
//...
Adjust.start(adjustConfig);

LinkMe 활성화

메서드 서명
public void setLinkMeEnabled(bool linkMeEnabled);

Adjust SDK를 사용하면 디바이스 페이스트보드에서 딥링크 정보를 복사할 수 있습니다. Adjust LinkMe 솔루션과 함께 사용 시 Adjust SDK는 iOS 15 이후 버전이 지원되는 기기에서 디퍼드 딥링킹을 활성화합니다.

사용자가 LinkMe URL을 클릭하면 링크 정보를 시스템 페이스트보드에 복사할 수 있는 옵션이 주어집니다. Adjust SDK는 딥링크 정보에 대한 시스템 페이스트보드를 읽고 딥링크 정보가 있는 경우 사용자를 의도한 페이지로 이동시킬 수 있습니다.

앱에서의 페이스트보드 확인을 활성화하려면 config 객체의 setLinkMeEnabled 메서드에 true 값을 전달합니다.

AdjustConfig adjustConfig = new AdjustConfig("{YourAppToken}", AdjustEnvironment.Sandbox, true);
//...
adjustConfig.setLinkMeEnabled(true);
//...
Adjust.start(adjustConfig);