본문 바로가기

개발용어

알아두면 좋은 개발용어 6 (딥링크)

반응형

링크(Link)라는 건 보통 단어를 들으면 어딘가에 연결시켜주는 걸로 이해하고 있는데,
그럼 딥링크(Deep Link)는 뭘까요?

사실 딥링크에 대해 제대로 정리가 안되어서, 가끔 회의가 끝나고 나서 전체 맥락으로 이해할 때가 있거든요.
그래서 한번 정리해보려고 합니다.

딥링크(Deep Link)

  • 특정 페이지로 도달할 수 있는 링크

찾아보니 웹(Web)의 경우에는 주소가 구체적으로 노출되어 있기 때문에 특정 페이지로 바로 접속할 수 있어 웹의 경우에는 딥링크에 대한 개념이 존재하지 않는다고 합니다.

근데 모바일 앱은 사정이 다르죠. 페이지 주소는 존재하지만 공개적으로 노출되어 있지 않고, 앱 설치라는 허들이 있어서 모바일 딥링크라는 개념이 생겨났다고 하네요. 그럼 모바일 환경에서의 딥링크의 정의는 앱 내 특정 페이지로 이동되거나 앱이 실행되는 수 있는 링크라고 생각해도 되겠네요. 주로 광고를 클릭했을 때 앱으로 전환되거나 게임에서 메신저 친구 초대를 통해 앱을 실행하는 것은 딥링크로 사용한다고 합니다.

그럼 딥링크의 종류를 알아볼까요?

URL schemes

  • 개념
    • 딥링크의 가장 초기 형태로 앱에 scheme://과 같은 URL schemes 값을 등록하는 형태로 "특정 스킴 값을 호출하면 특정 앱이 오픈됨" 
      • <a href="line://"> open LINE ! </a>
  • 한계
    • URL schemes를 누구나 제약없이 설정할 수 있기 때문에, 고유한 딥링크 점유하는 게 불가능. 다른 앱의 스킴 값이 중복된 경우 다른 앱으로 이동하는 하이재킹(hijacking)이 될 수 있음 (iOS 9.1 버전 이후로 URL schemes에 대해 추가 개발하지 않겠다고 공지)
    • URL schemes로는 앱설치 유무 파악이 불가능하여 앱 미설치 시 앱 마켓 자동 이동 불가능. 별도 처리 필요

다이렉트 딥링크 (Direct Deep Link)

  • 개념
    • HTTPS가 적용된 도메인을 딥링크로 사용. 도메인의 고유성과 HTTPS의 SSL(Secure Socket Layer) 인증서를 이용하여 딥링크의 안전한 자원 관리, 보안 문제 해결
  • iOS 유니버셜 링크 (Universal Link) / 안드로이드(Android)의 앱링크 (App Link)
    • 앱 설치 유저 : 앱 내 특정 페이지로 이동
    • 앱 미설치 유저 : 앱 마켓으로 이동 가능
  • 한계 : 앱 미설치 유저가 마켓으로 이동해서 딥링크가 유실되는 현상 발생

디퍼드 딥링크(Deferred Deep Link)

  • 동작
    • 앱 설치 유저 : 앱 내 특정 페이지로 이동 
    • 앱 미설치 유저 : 앱 마켓으로 이동하여 유저가 설치 및 실행하면 앱 내 특정 페이지로 이동
  • 한계 : OS별로 딥링크를 구현해야 함


다이나믹 링크 또는 원링크 (Dynamic Link Or One Link)

  • 개념
    • 하나의 URL로 OS에 맞게 자동으로 앱 내 특정 페이지로 이동 가능
  • 동작 
    • 앱 설치 유저 : 앱 내 특정 페이지로 이동
    • 앱 미설치 유저 : 앱 마켓으로 이동하여 유저 설치 및 실행하면 앱 내 특정 페이지로 이동


각각의 딥링크의 개념이 한계점을 중심으로 보완되어 새로운 개념이 생기는 것 같습니다.
이상입니다.

참고

반응형