디퍼드 딥링크 ios - dipeodeu diblingkeu ios

앱을 설치하지 않은 유저에게도, 링크를 클릭하여 앱을 설치한 후에도 관련 페이지로 연결하고 싶으신가요? 그렇다면, ‘디퍼드 딥링크(Deferred Deep Linking)’가 필요합니다.

디퍼드 딥링크란?

딥링크에 추가적으로 활용할 수 있는 기술로, 문자 그대로 ‘지연된 딥링크’를 의미합니다. 앱이 설치되지 않은 유저에게는 딥링킹을 할 수 없기 때문에, 해당 유저가 링크를 클릭한 후 앱을 설치하고 앱을 실행하기까지 기다렸다가 딥링크를 실행해 주는 기술입니다. 이를 위해서는 유저가 링크를 클릭했을 때의 정보와, 앱을 설치하고 오픈한 유저의 정보는 물론 딥링크를 보관하고 내려줄 서버가 필요하기 때문에 직접 구현하는 것이 쉽지 않죠.

이번 포스트에서 디퍼드 딥링크 기술이 필요한 이유, 그리고 이를 구현하는 방법을 확인해 보세요.

디퍼드 딥링크가 필요한 이유?

‘딥링크’는 모바일 환경에 놓인 유저가 링크를 클릭했을 때, 앱을 실행시키고 특정 페이지로 이동하도록 돕는 기술입니다. 즉, 앱으로 향하는 특정한 경로가 지정된 링크이죠. 하지만 딥링크를 클릭했을 때, 앱이 설치되어 있지 않다면 앱 마켓으로 연결되거나 오류가 발생하면서 해당 링크/경로가 제대로 작동하지 않습니다. 다시 말해, 딥링크를 클릭한 유저라도 앱 내 특정 페이지로 연결되지 않는다는 것을 의미합니다. 

구체적으로는, 앱이 설치되지 않은 경우엔 다음과 같은 현상들이 발생할 수 있습니다.

  • URI Scheme 딥링크를 사용했을 때는, 앱이 설치되어 있지 않다면 앱 마켓 등 다른 곳으로의 이동이 불가능하기 때문에 아무런 동작이 일어나지 않습니다.
  • Universal Links 및 App Links의 경우 App Store 및 Google Play로 바로 랜딩 시키는 URL 사용이 불가능하기 때문에, 앱이 설치되지 않은 유저에게 앱 설치를 유도하기조차 어렵습니다. (Universal Links 및 App Links URL로 특정 페이지에서 자바스크립트를 동작시켜서 앱 마켓으로 이동시킬 수는 있으나, 이는 불완전할 수 있다는 점을 염두해야 합니다.)
  • 위와 같은 상황에 대처하고자 MMP에서 제공하는 트래킹 링크로 딥링크만 사용하는 것도 완전한 유저 경험을 제공하지는 않습니다. 사용하는 MMP의 트래킹 링크에 디퍼드 딥링크가 기본으로 설정되어 있지 않은 경우, 리다이렉트 설정으로 앱 마켓까지는 이동할 수 있겠지만 앱 설치 후 앱을 오픈한 다음 의도했던 특정 페이지로는 연결되지 않기 때문입니다.

이러한 기능의 한계로 인해, 광고 클릭 후 아무런 동작이 발생하지 않거나 앱 설치까지 하는 번거로운 과정 끝에 앱의 메인 페이지만 나타나게 된다면, 광고에 소구된 잠재 고객이라도 즉시 이탈할 수 있습니다. 혹은 앱의 메인 페이지를 보고 당황한 고객이 다시 광고에서 본 페이지를 찾아 헤매는 경우도 있을 겁니다. 이는 결코 좋은 고객 경험이라고 할 수 없습니다.

이러한 문제를 해결해 줄 수 있는 기술이 바로 ‘디퍼드 딥링크’입니다.

앱을 설치하지 않은 유저라도 광고를 보고 앱을 설치했다면, 설치 후 앱 내에 관련 내용으로 연결되는 것이 자연스럽다고 느낄 겁니다. 충분한 전환 의사를 가지고 앱을 설치한 유저에게 기대했던 바를 즉시 보여주어야 하죠. 그리고 앱 설치 후 소구 된 광고 내용과 연관된 페이지로 연결되면 더 원활하게 상품 및 서비스를 탐색할 수 있기 때문에, 전환할 가능성까지도 높아집니다. 앱 마케팅을 한다면 이와 같은 더 좋은 유저 경험을 제공할 수 있는 기회를 놓쳐서는 안됩니다. 이것이 바로 앱 마케팅에 ‘디퍼드 딥링크’가 반드시 필요한 이유입니다.

디퍼드 딥링크 구현하는 방법

다만, 디퍼드 딥링크 기술은 직접 구현하기엔 여러 어려움이 발생할 수 있습니다. Android OS 레벨에서는 Google Play Install Referrer API를 활용하여 구현할 수 있으나 제한적입니다. 게다가 iOS에서는 OS 레벨에서 디퍼드 딥링크를 구현할 수 있는 방법이 제공되지 않기 때문에 따로 서버를 구축하는 등 복잡한 환경이 필요합니다.

쉽지 않은 디퍼드 딥링크 기술의 직접 구현

우선, Android에서는 Google Play 스토어의 Google Play Install Referrer API를 활용하여 Google Play에서 설치된 패키지의 리퍼러 URL 및 리퍼러 클릭이 발생한 시간의 타임스탬프 등을 가져올 수 있기 때문에 디퍼드 딥링크를 자체적으로 구현할 수 있습니다.

하지만 이 방법은 앱이 설치되어 있지 않아야 하며, 플레이 스토어 URL을 구성해야 하므로 크롬 인텐트와 같이 사용할 수 없습니다. 또한, 구현 방법이 복잡하기 때문에 데이터 수집에 이슈가 생길 가능성이 높으며, Google Play에서 다운로드한 경우에만 동작한다는 제한도 있습니다.

이렇게 Google Play Install Referrer를 활용하여 Android에서 구현했다고 하더라도, iOS에서는 비슷한 방법으로는 구현할 수 없기 때문에 결국 서버를 구축하는 추가적인 과정이 필요합니다.

모바일 어트리뷰션 솔루션으로 손쉽게 디퍼드 딥링크 구현하기

자체적으로는 구현하기 어려운 디퍼드 딥링크, 어떻게하면 효율적이고 완전하게 구현할 수 있을까요? 바로, 모바일 어트리뷰션 툴에서 제공하는 솔루션을 활용하는 겁니다.

디퍼드 딥링크는 유저가 링크를 클릭한 후, 앱을 설치하고 실행할 때까지 딥링크를 지연시켜주는 기술입니다. 다시 말하자면, 유저가 클릭했을 때의 정보를 보관하고 있다가 앱이 실행되었을 때 클릭 정보와 앱을 오픈한 유저를 매칭하고 딥링크를 내려줄 수 있는 서버가 필요합니다. 이는 어트리뷰션 툴에서 트래킹 링크 클릭 후 클릭 데이터와 유저 데이터를 매칭하여 어트리뷰션을 하는 과정과 유사하죠. 실제로 어트리뷰션 툴에서 이 과정을 활용하여 디퍼드 딥링크를 제공하곤 합니다.

어트리뷰션 툴 에어브릿지를 통해 디퍼드 딥링크를 구현하는 과정을 알아보면 다음과 같습니다.

  • 에어브릿지 트래킹 링크를 클릭하게 됨 -> 에어브릿지 서버에 클릭한 링크 정보를 서버에서 보관 -> 유저가 앱 설치 또는 SDK가 설치된 앱 최초 설치 -> SDK가 포함된 앱이 최초 실행된경우 서버에 해당 유저가 열렸어야 했던 링크 정보가 있는지 확인 -> 서버에서 열렸어야할 딥링크 주소를 SDK로 전달 -> 앱에서 다시 해당 링크의 딥링크 동작을 반복하여 지정된 앱 내 특정 페이지를 열어줌

구체적으로 딥링크와 디퍼드 딥링크를 설정하는 방법은 아래의 각 OS 별 SDK 개발자 가이드에서 확인할 수 있습니다.

  • 에어브릿지 Android SDK 가이드
  • 에어브릿지 iOS SDK 가이드

디퍼드 딥링크를 손쉽게 적용할 수 있는 에어브릿지 트래킹 링크

에어브릿지의 경우, 트래킹 링크를 딥링크로 설정하면 디퍼드 딥링크 기능가 디폴트로 구현됩니다. 즉, 트래킹 링크 설정 한 번으로, 링크 클릭 후 앱이 설치되어 있다면 바로 해당 페이지로, 앱이 설치되어 있지 않다면 앱 설치 후 해당 페이지로 이동할 수 있습니다.

디퍼드 딥링크 ios - dipeodeu diblingkeu ios

에어브릿지 트래킹 링크를 활용한 딥링크 이미지

앱 마케팅을 원활하게 진행하기 위해서는 MMP의 트래킹 링크를 사용하는 것이 좋습니다.

이와 더불어, 마케팅을 할 때 활용하는 앱 설치 링크와 딥링크(URI Scheme, Universal Links, App Links), 디퍼드 딥링크 등의 기능을 OS 업데이트와 유지 보수의 이슈 없이 사용하기 위해서는, 자체 개발 보다는 모바일 어트리뷰션 툴(MMP)의 트래킹 링크를 사용하는 것이 좋습니다. MMP의 트래킹 링크를 통해 OS 별 복잡한 구현 과정 없이 편리하게 원하는 유저 여정을 설계할 수 있죠. 특히 에어브릿지는 어떠한 상황에서도 문제 없이 트래킹 링크로 원하는 기능을 구현할 수 있도록 지속적인 업데이트와 개발을 이어가고 있습니다.

앱 마케팅 시 반드시 필요한 기술인 ‘디퍼드 딥링크’, 에어브릿지 트래킹 링크를 활용하여 효율적으로 구현해보세요.

* 다른 딥링크101 시리즈 보러가기 
👉[딥링크101] 마케터와 개발자를 위한 딥링크 시작하기
👉[딥링크101] iOS Safari에서 딥링크 동작 시 경고 문구가 뜨는 이유가 무엇일까요? 

특정 콘텐츠로 사용자를 랜딩시켜주는 링크

특정 주소 혹은 값을 입력하면 앱이 실행되거나 앱 내 특정 화면으로 이동시키는 기능을 수행

딥링크는 3가지 방식으로 구분된다.

  • URI 스킴 방식 : 앱에 URI 스킴(scheme) 값을 등록하여 딥링크 사용
  • 앱링크(App Link) : Android App link, FB App link, GG  App link 등 제공 - 도메인 주소를 이용한 딥링크 사용
  • 유니버셜 링크 (Universal Link) : iOS 제공  - 도메인 주소를 이용한 딥링크 사용

URI 스킴 방식

우선 스킴(scheme)이란 특정한 고유 앱을 지칭하는 것(facebook, youtube, twitter 등)

path는 앱 내 특정 콘텐츠(회원가입, 결제페이지 등)

URI 스킴 방식은 딥링크의 가장 초기 형태이며

  • Scheme://Path

위의 형태로 사용하고

스킴값이 중복인 경우가 존재할 수 있다(앱스토어, 플레이스토어, 갤럭시 스토어 등)

URI 스킴 방식 만으로는 앱 설치 유무를 알 수 없으며, 앱이 설치되어 있지 않으면 딥링크가 동작하지 않는다

유니버셜 링크와 앱링크

웹페이지(도메인) 주소를 사용한 딥링크

도메인 주소를 딥링크 실행값으로 사용하고, 브라우저 앱 주소창에 도메인을 입력하면,

해당 앱이 바로 오픈되어 사용할 수 있는 기능

바로 이 기능을 iOS 에서는 유니버셜 링크(Universal Link), Android 에서는 앱링크(App Link)라고 부름

위의 딥링크는 다이렉트 방식으로

기존에 앱이 설치된 유저는 앱 내 특정 페이지로 이동하고

앱이 설치되지 않은 유저는 각각의 앱스토어로 이동한다.

그러나 앱을 설치하는 과정에서 모바일 딥링크가 유실되는 경우가 있기 때문에 이를 극복하는 것이 필요했음

디퍼드 딥링크를 사용하면

기존에 앱이 설치된 유저는 위와 같이 앱 내 특정 페이지로 이동하고

앱이 설치되지 않은 유저는 각각의 앱스토어로 이동 후, 앱 내 특정 페이지로 이동시킨다

설치 과정에서 링크의 유실 없음

디퍼드 딥링크는 딥링킹 솔루션을 통해서만 제공되는 기능이고, 디퍼드 딥링크는 SDK 연동을 통해 생성하기 때문에

OS마다 각각의 디퍼드 딥링크를 구현해줘야함

디퍼드 딥링크는 OS별로 딥링크를 구현해야 하지만

다이나믹 딥링크(또는 원링크)는 하나의 링크를 사용하여 자동으로 앱 내 특정페이지로 이동할 수 있게 해줌

기존에 앱이 설치된 유저는 앱 내 특정 페이지로 이동하고

앱이 설치되지 않은 유저는 앱스토어로 이동(OS에 맞게) 후, 앱 내 특정 페이지로 이동시킴

참고: branch.io/ko/what-is-deep-linking/

딥링킹(Deep Linking) | Branch

모든 플랫폼 및 채널에서 사용할 수 있는 Branch의 강력한 딥링크로 유저 참여를 높이는 방법을 알아보세요.

branch.io

help.dfinery.io/hc/ko/articles/360039757433-%EB%94%A5%EB%A7%81%ED%81%AC-Deeplink-URI%EC%8A%A4%ED%82%B4-%EC%9C%A0%EB%8B%88%EB%B2%84%EC%85%9C-%EB%A7%81%ED%81%AC-%EC%95%B1%EB%A7%81%ED%81%AC-%EA%B5%AC%EB%B6%84%EA%B3%BC-%EC%9D%B4%ED%95%B4

딥링크(Deeplink) : URI스킴, 유니버셜 링크, 앱링크 구분과 이해

  딥링크 (Deeplink) http 혹은 https 로 시작하는 인터넷 주소는 모두 특정 서비스의 웹페이지로 이동합니다. _ https://igaworks.com 을 주소창에 입력하면 IGAWorks 홈페이지로 이동합니다._ https://adbrix.io

help.dfinery.io

디퍼드 딥링크 ios - dipeodeu diblingkeu ios

feel5ny.github.io/2019/09/22/Communication_001/

웹에서 앱으로 이동하기 (feat.딥링크)

하나의 서비스가 웹이나 앱, 두 가지 플랫폼에서 운영 중일 경우, 서로가 서로의 플랫폼으로 고객을 이동시킬 수 있다. 앱에서는 웹링크를 사용하여 웹으로 이동시키거나, 인앱브라우저로 웹화

feel5ny.github.io

디퍼드 딥링크 ios - dipeodeu diblingkeu ios

engineering.linecorp.com/ko/blog/how-to-use-deeplink-in-trackit/

TRACKIT에서 딥링크를 사용하는 방법 - LINE ENGINEERING

안녕하세요. LINE GAME PLATFORM 개발 팀에서 TRACKIT을 개발하고 있는 이형중입니다. TRACKIT은 2018년 말 오픈한 서비스로 웹에서 애플리케이션에 접근하거나 실행한 사용자를 추적하는 서비스

engineering.linecorp.com

디퍼드 딥링크 ios - dipeodeu diblingkeu ios