참고문서1) 링킹이란?2) 커스텀 url scheme3) 딥 링킹참고 문서예시4) URL스킴, App Link(Android), Universal Link(iOS) 차이점URL스킴 중복문제해결방안 (굳이)
참고문서
- 공식문서 (native) : https://reactnative.dev/docs/linking.html
- 공식문서 (Expo) : http://docs.expo.io/versions/latest/workflow/linking/
- 스택오버플로 예시 : https://stackoverflow.com/questions/42536216/how-to-open-an-external-app-from-react-native-app
- 앱 URL 모음 사이트 : https://docs.google.com/spreadsheets/d/1xRC8ZmOYOXQNuP0-8afqe5rjyRaSvxRg0kQghRuMi1Q/edit#gid=0
1) 링킹이란?
Linking
은 앱끼리 내보내고 받고 하는 상호작용을 지원함.- 모든
링크(URL)
는URL Scheme
를 가짐. - 웹사이트는 일반적으로
https://
또는http://
로 url scheme이 고정돼있음.
- 메일앱의 경우에는 url scheme으로
mailto
을 사용함. mailto://
으로 링크를 열면 OS가 알아서 메일 앱으로 열어줌.
그 외 기본적으로 내장되어있는
built-in URL scheme
은 아래 링크를 참조하자.- built-in URL (mailto, tel, sms, https, http 등)
2) 커스텀 url scheme
메일 앱을
mailto://
로 열었듯, 다른 앱들도 url scheme을 통해 열 수 있음.기본적으로 내장되어있는
built-in url scheme
을 제외한 나머지를 커스텀 url scheme
이라고 함.- 슬랙 : slack://
- 네이버 지도 : nmap://
3) 딥 링킹
url scheme을 앱에 전달하면, 해당 앱이 열리면서 전달된 url을 받는데 이를 적절하게 처리할 수 있도록 만드는 작업을 바로 deep linking 이라고 함.
참고 문서
예시
- 좌표 2개를 전달하면 자동으로 네비게이션 기능을 실행함.
4) URL스킴, App Link(Android), Universal Link(iOS) 차이점
URL스킴 중복문제
(근데 큰 문제 될 건 없음...)
플레이스토어, 원스토어, 갤럭시스토어 등 각종 스토어들이
market://
이라는 동일한 스킴을 사용함.⇒ 어떤 앱으로 열지 결정하지 못하므로, 유저에게 물어봄.

해결방안 (굳이)
App Link
(안드로이드)
Universal Link
(iOS)