티스토리 뷰

Dynamic Link

링크를 통해서 앱으로 들어가는 것이 몇개가 있는데

  • 딥링크
  • 다이나믹링크

 

실제적인 구조

  • 다이나믹링크
  • 딥링크

 

다이나믹링크

  • 앱이
    • 설치 X → 플레이스토어로 넘어가고,
    • 설치 O → 딥링크를 이용하여 앱으로 이동

 

디퍼드 딥링크

  • 다이나믹링크 단점 → 앱 설치후에 들어가면 원래 링크에서 띄울려는 페이지로 갈 수가 없음, 링크가 유실된다고도 할 수 있음
  • 이건 일단 안해서 담으로

 

다이나믹 링크 만들기

 

앱을 특정 화면으로 이동하는 다이나믹 링크를 만들고 싶어요

  • 그렇다면 짧은 링크는 쓰레기통에 넣으면 된다.
https://{XX}.page.link/?link={딥링크}&apn={androidPakageName}

https://holdy.page.link/?link={host://scheme?param1=&param2=2}&apn={androidPakageName}
<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />
    <data
        android:host="host"
        android:scheme="scheme" />

</intent-filter>

이렇게 하면 intent로 딥링크 전체 url이 뽑아져 나온다.

 

 

참고로

  • 딥링크의 host를 꼭 https로 하지 않아도 된다.
  • 예는 안드지만 아이폰도 안드의 앱 패키지 같은거 넣으면 된다.
  • 아래를 url을 보고 만들면된다.
    • https://firebase.google.com/docs/dynamic-links/create-manually
    • 짧은 링크 저게 뭔가 엄청 고민했고, 링크에 뒤에 짧은 링크의 path를 붙여주는 순간 딥링크의 파라미터가 들어오지 않는다.
      • 이걸 왜 문서화로 표시를 안했지?
      • 왜 아무도 이거에 대한 글을 쓰지 않았지?, 내 검색 능력이…
  • 문서도 친절하지 않아서 엄청 애를 먹었다.

 

 

 

'개발 > 안드로이드' 카테고리의 다른 글

DataBinding 의 default는 거짓이다.  (0) 2022.04.19
hilt 힐트  (0) 2021.10.09
StateFlow  (0) 2021.03.03