adjust-icon

딥링킹

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

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

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

딥링크 설정

사용자가 앱을 설치한 경우, 사용자가 딥링크 정보가 포함된 링크를 클릭하면 딥링크가 실행됩니다. Adjust SDK는 앱에서 사용하기 위해 딥링크 정보를 파싱할 수 있는 툴을 포함하고 있습니다. 딥링킹을 설정하려면 고유한 스킴 이름을 선택하고 특정 처리기 메서드에 지정해야 합니다. 다음을 수행하시기 바랍니다.

  1. 솔루션 탐색기 를 엽니다.
  2. Package.appxmanifest를 두 번 클릭해 매니페스트 디자이너를 엽니다.
  3. 선언 탭 을 선택합니다.
  4. Available Declarations —> Protocol 을 선택하고 Add 를 선택합니다.
  5. URI 스킴 이름을 선택합니다. URI 스킴 이름은 소문자 여야 합니다.
  6. Ctrl+S 를 눌러 변경 내용을 저장합니다.

Package.appxmanifest 스크린샷 구성.

다음으로 OnActivated 이벤트 처리기를 설정해야 합니다. 이것으로 활성화된 딥링크 이벤트를 처리합니다. 설정하려면 App.xaml.cs 파일에 다음을 추가합니다.

App.xaml.cs
// ...
protected override void OnActivated(IActivatedEventArgs args) {
if (args.Kind == ActivationKind.Protocol) {
var eventArgs = args as ProtocolActivatedEventArgs;
if (eventArgs != null) {
// to get deep link URI:
Uri deeplink = eventArgs.Uri;
// ...
}
}
base.OnActivated(args);
}
// ...

사용자가 deep_link 파라미터에서 고유 스킴 이름 이 포함된 링크와 상호작용하면 앱이 열립니다. 이 값은 URL에 URL 인코딩된 값이어야 합니다. Adjust SDK는 결과를 비인코딩된 텍스트로 전달합니다.

디퍼드 딥링크

속성 선언
public Func<Uri, bool> DeeplinkResponse { get; set; }

디퍼드 딥링크 수신 시 델리게이트 함수를 호출하도록 Adjust SDK를 구성할 수 있습니다. 이 델리게이트 함수는 딥링크를 string 인수로 수신합니다. SDK에서 Adjust 서버의 딥링크 컨텐츠를 수신하면 델리게이트 함수를 통해 전달하며 bool 반환값을 예상합니다. 이 값은 SDK가 OnActivated 이벤트 처리기를 시작할지 여부를 결정합니다.

var adjustConfig = new AdjustConfig(appToken, environment,
msg => System.Diagnostics.Debug.WriteLine(msg), LogLevel.Verbose);
adjustConfig.DeeplinkResponse = deepLinkUri =>
{
if (ShouldAdjustSdkLaunchTheDeeplink(deepLinkUri))
{
return true;
}
else
{
return false;
}
};
Adjust.ApplicationLaunching(adjustConfig);
// ...
메서드 서명
public static void AppWillOpenUrl(Uri uri);

사용자를 리어트리뷰션하려면 앱에서 Adjust SDK에 대해 추가적인 콜을 수행해야 합니다. 앱이 딥링크 컨텐츠를 수신하면 appWillOpenUrl(Uri, Context) 메서드에 콜을 추가합니다. 이후 Adjust SDK는 딥링크 내에서 새로운 어트리뷰션 데이터를 찾을 것입니다. SDK가 새로운 정보를 찾으면 이는 리어트리뷰션을 위해 Adjust 서버로 전달됩니다.

Adjust 딥링크 클릭으로 사용자가 리어트리뷰션되어야 하는 경우 이는 어트리뷰션 콜백을 트리거합니다.

앱의 OnActivated 메서드의 Adjust.AppWillOpenUrl을 호출하셔야 합니다.

using AdjustSdk;
public partial class App : Application
{
protected override void OnActivated(IActivatedEventArgs args) {
if (args.Kind == ActivationKind.Protocol) {
var eventArgs = args as ProtocolActivatedEventArgs;
if (eventArgs != null) {
Adjust.AppWillOpenUrl(eventArgs.Uri);
}
}
//...
}
}