리액트 네이티브 기반 iOS 앱 Adjust를 통한 디퍼드 딥링크 이슈

안녕하세요, 리액트 네이티브를 통해 앱을 개발하여 iOS 앱을 구축하였습니다.
추가로 디퍼드 딥링크를 사용 중에 있는데 디퍼드 딥링크는 Adjust 솔루션을 이용 중에 있습니다.

[Adjust 딥링크]
https://5wp6.adj.st/shop/detail/224914864?adj_t=h23evx7&adj_fallback=https%3A%2F%2Fwww.banpoommarket.co.kr%2Fshop

해당 링크가 너무 길기에 네이버 측의 “단축 URL” 기능을 사용하여
https://me2.do/xjJnNBjM
와 같은 쇼츠 링크로 변경을 하였습니다.

카카오톡으로 공유하기를하여 해당 링크를 키면 무조건적으로 앱 스토어로 이동하게되는 이슈가 발생하고 있습니다.
*당연하게도 사파리 앱을 통해 상기 2가지 링크로 진행 시 앱이 문제없이 열리고 있습니다.

번외로 슬렉과 같은 앱에서도 동일하게 자체 웹뷰를 돌린후 단축 URL → 리다이렉션(adjust딥링크) → 앱 스토어 이동

이렇게 되고 있습니다. 본사는 슬렉은 공유하기에서 논외로 잡고 있어 큰 이슈로 보지 않으나 카카오톡은 전국민이 사용하는 앱으로 인앱 브라우저로 열린 후 무조건적으로 앱 스토어로 이동하는 이슈를 몇 달 째 해결이 되지 않아 이렇게 개발단에 내용을 남깁니다.

해당 링크 자체를 사파리로 동작 시킬 경우 이슈 없이 바로 앱이 동작이 되는 것을 확인했습니다.

대부분 딥링크에 대한 이슈 문의 내용을 보면 branch 를 사용을 권고하고 있으나 현재 본사에서 adjust를 변경할 예정이 없어서 + 사파리에서도 제대로 대응이된다면 다른 이슈로 생각이되고 있음

상기 내용에 대한 보다 자세한 가이드를 부탁드리겠습니다.

단축 URL로 인코딩을해서 안되는것은 아니라고 바라보고 있습니다.

추가적으로 카카오 API는 로그인이나 결제 시스템에서만 사용 중이며 공유하기 기능은 사용치 않고 있습니다.

  • 안드로이드의 경우 아무런 이슈 없이 너무 잘되고 있습니다. iOS에서만 발생하는 이슈로 인지해주시면 감사하겠습니다.

안녕하세요.
Adjust측 가이드를 확인해 보니 위 링크의 경우 iOS에서 1)유니버셜링크, 2) 앱 스토어(스킴 호출) 순서로 처리되는 딥 링크로 확인됩니다.

유니버셜 링크는 사용자 클릭 이벤트 없이 접근하게 되면 iOS 정책에 의해 동작하지 않습니다.
카카오톡이나, 트위터, 라인, 슬랙 등과 같은 인앱브라우저를 운영하는 서비스에서는 사용자 클릭 이벤트 없이 URL이 브라우저로 바로 로딩되기에 유니버셜 링크는 iOS 정책에 의해 동작하지 않게 됩니다.

아래 가이드에 따라 인앱브라우저에서 접근 시, 서비스측 앱의 커스텀 스킴이 호출 될 수 있도록 구성하시는게 좋을것 같습니다.
참고로 카카오톡 인앱브라우저의 경우 User-Agent 값에 KAKAOTALK 값이 포함되어 있으니 이를 기준으로 구분가능합니다.

https://help.adjust.com/ko/article/user-destinations-ad-network

https://help.adjust.com/ko/article/user-destinations-ad-network

상기 안내해주신 링크에는 “서비스측 앱의 커스텀 스킴” 이라는 내용이 없어보입니다…

  • 유니버셜 링크는 동작하지 않는다, 사파리 자체로 동작하면 앱 미설치 시, 앱 스토어 이동/ 앱 설치 시 앱 이동 및 파라미터에 맞는 화면으로 이동까지 잘되는 것을 확인했습니다.
    댓글에서의 유니버셜 링크가 동작되지 않는다의 의미를 명확히 파악이 되지 않습니다.

조금 더 상세한 가이드 요청드리겠습니다.

유니버셜 링크가 감지되면 iOS는 해당 앱을 실행 시킵니다.
하지만 해당 링크 접근이 사용자 이벤트로 부터 발생되지 않았다면 iOS는 앱 실행을 보류하고 브라우저로 표시되게 합니다.

제공해 주신 딥 링크는 브라우저로 이동하게 된 이러한 조건에서 기본적으로 앱 스토어 커스텀 스킴을 호출 합니다.
사파리 주소창에 딥 링크를 직접 입력하면 마켓으로만 이동하는 것을 확인할 수 있습니다.

여러 딥 링크 서비스에서는 이러한 상황 해결을 위해 서비스 앱의 커스텀 스킴이 호출될 수 있는 옵션을 제공하고 있습니다.
사용하시는 adjust의 경우 앞서 안내드린 가이드 문서와 해당 사이트의 다른 문서들에서 이를 찾아 직접 구성 하셔야만 합니다.

제게 전달한 링크가 광고 링크로 보여 그에 가까운 가이드 문서를 제공해 드렸지만
그보다는 아래 설정을 하고 사용해 보시는게 좋을것 같습니다.

adjust_deeplink_js=1 파라미터를 추가하여 사용해 보시는 것을 추천 드립니다.
관련 가이드 : https://help.adjust.com/ko/article/universal-links-faqs