'다이나믹링크'와 '딥링크'는 웹개발&앱개발에서 자주 쓰이는 용어이다.
사건의 발달은 그렇다. 팀에서 '웹에서 다이나믹링크와 딥링크를 쓰는 부분이 혼재되어 있어 발생하는 문제들이 존재할 것으로 판단'한다는 것이었다. 아직까지 나는 다이나믹링크와 딥링크의 차이점을 모르는 상태에서 왜 이 둘을 혼재해서 사용하면 문제가 되고, 어떤 문제가 존재하는거지? 싶어 찾아보았다.
딥링크 Deep Link
사용자가 특정 앱 화면으로 '직접 이동'할 수 있도록 만드는 링크
웹에서는 보통 https://example.com/editor 등의 URL로 처리
Example Domain
Example Domain This domain is for use in illustrative examples in documents. You may use this domain in literature without prior coordination or asking for permission. More information...
example.com
모바일 앱에서는 특정 스킴 myapp://some-page와 같이 처리
고정된 URL로 처리는 간단하지만 유연성이 부족할 수 있음
결론적으로 딥링크는 앱 내 라우팅에만 쓰여 앱이 없으면 아무것도 할 수 없다. 앱이 있어야만 그 안에서 내부 라우팅을 수행한다.
다이나믹 링크 Dynamic Link
구글 파이어베이스에서 제공
사용자를 웹/앱 양쪽으로 자동 라우팅할 수 있게 해주어 유연성이 높은 '스마트 링크'
앱 설치 여부에 따라 다르게 작동
ㄴ사용자가 앱 설치 안되어있으면 스토어로 유도, 설치 후 원래 페이지로 이동
요즘 쇼핑몰 앱을 보면 앱 진입 시점에 '앱으로 이동' 하거나 '괜찮아요, 웹 페이지로 계속 볼게요'라는 2개의 선택지가 자주 나오곤 한다.
이런 상황에서, 웹페이지로 계속 보다가 앱을 설치하고 설치 후 원래 페이지로 돌아가게 하는 기능을 원한다면 이것이 다이나믹 링크가 하는 일이다.
사용자가 앱을 설치했을 경우 -> 바로 해당 화면으로 이동
사용자가 앱을 설치하지 않았을 경우 -> 앱스토어/플레이스토어로 앱 설치 유도 -> 설치 후 해당 화면으로 이동
이것을 딥링크만으로는 구현할 수 없고, 다이나믹 링크 전용 기능이라고 한다.
내가 A쇼핑몰 https://shop.com/product/jeans-123
을 보고 있었다고 하자. 그러면 A쇼핑몰의 앱이 설치되어 있으면 바로 앱이 실행되고 jeans-123의 바지 상세 화면으로 이동하지만,
앱이 설치되어있지 않다고 하면 앱스토어나 플레이스토어에서 앱을 설치하고 실행하면, 다시 jeans-123의 바지 상세 화면으로 자동으로 진입하게 해준다는 것이다.
결론적으로 다이나믹 링크의 역할은 웹 -> 앱 전환 흐름 + 이전 상태 기억 + 라우팅 처리까지 해준다는 것이다.
다이나믹 링크 + 딥링크의 조합
똑똑한 서비스 앱들은 다음과 같은 절차를 지닌다고 한다.
1) 웹에서 유저가 어떤 상품/글/영상을 보고 있는지 딥링크로 추출
2) 그 정보를 다이나믹 링크로 감싸기
3) 그 다이나믹 링크를 통해 앱 설치 -> 실행 -> 동일 위치 이동까지 처리하는 라우팅 기능 겸비
if (앱설치됨) {
딥링크로 이동
}
else {
다이나믹 링크 생성해서 스토어로 이동 -> 설치 -> 앱 -> 딥링크로 진입
}
개발자로서 배울 포인트
1) 웹 -> 앱 전환 흐름이 필요한 경우 다이나믹 링크로 고려
위에서 예시를 들면, 딥링크는 앱 내 라우팅만 하므로 사용자에게 앱스토어/플레이스토어까지 가서 앱 설치를 하라고 안내할 수 없다.
2) 안드로이드에서는 '딥링크' , iOS에서는 '유니버셜 링크'라는 호칭으로 쓰임
3) 2) 민감한 경로의 경우 단순 딥링크 URL 노출이 위험할 수 있음.
4) 다이나믹링크에는 파라미터가 붙는데, 이 파라미터는 사용자가 앱을 설치하고 나서도 원래 가려던 위치나/사용자가 원래 존재했던 위치나 정보를 유지하기 위해 붙이는 값이다.
사업개발에서 배울 포인트
1) 사용자가 웹에서 보고 있던 화면을 앱 설치 후에도 사용자가 보고 있던 화면을 계속 유지한다는 건 Context 유지가 뛰어난 설계로, 사용자의 이탈 지점을 줄일 수 있다.
2) 전환율 CVR을 높이는 전략
CVR이란, Conversion Rate의 약어로 전환율을 의미하는데, 특정 액션의 전환율을 뜻한다.
CVR이 상승하면 큰 성과를 얻었다는 의미로 해석되며, 실제 구매가 일어나지 않아도 특정 액션/어플 설치/설문지 참여/회원가입/상담문의 등의 액션이 발생했을 때도 CVR에 반영된다. 다이나믹링크 + 딥링크 혼합 사용 시 사용자의 이탈률을 줄여 CVR을 높일 수 있으므로 마케팅 비용 최소화와 전환 효율을 극대화하는 전략이다.
'ETC' 카테고리의 다른 글
.env.local 파일 수정 후 vault? (1) | 2025.03.11 |
---|---|
canvas - node version 안맞음 해결 (0) | 2024.04.19 |
Docker 배포 안됨 (pnpm 버전 다름) (1) | 2024.04.18 |
디버깅하기 - 다양한 console의 종류 (1) | 2024.02.11 |
CNAME이란? + DNS TXT (2) | 2023.11.17 |