App Links
만약 당신이 어떤 특정 URL 을 방문한다고 하자. 예를 들면 아래와 같다.보통 이 url 을 클릭해서 들어가면 단순 web page 가 보일 것이다. 그리고 그것이 어찌보면 당연하다.
그런데 요새 스마트폰이 대세가 되면서, 앱들이 생겨났다. 우리가 많이 사용하는 페이스북 같은 것을 봐도 웹으로 봐도 되고, 앱(어플)로 봐도 된다.
그렇다면 유저가 특정 url 을 방문할 때 이것을 단순히 browser 에서 web page 로 여는 것이 아니라, 우리의 앱(어플) 에서 보게 하고 싶었다. android 쪽에서 이런 용도로 만들어 놓은 것이 deep link 이다.(참고) 이런 deep link 를 좀 더 표준화(?) 시킨 것이 페북에서 만들어 놓은 App Link 이다. (이건 html 의 meta tag 를 이용한다. 자세한 것은 ref. 4 를 참고하자.)
쉽게 풀이하자면, 앱으로 가는 link 라는 뜻일 것이다.
여러 platform 에서 사용
이렇게 특정 url 을 통해서 app 을 호출해서 앱을 여는 것을 deep-link 라고 하는데, 이 deep-link 화면을 보기 위해 정해진 url 이 있을 것이다. 그런데 문제는 우리는 지금 android 도 있고, iOS 도 있다. 그래서 특정 url 을 공유할 때 android 에서는 app 이 잘 열리는데, iOS 는 아무런 동작도 하지 않는 경우가 생길 수 있다.(물론 이것은 양쪽의 scheme 을 잘 통일해서 사용하면 해결될 문제이긴 할 듯 하다.)이런 경우에 URL 을 만들고, 그 안에 App Link 를 구성해 놓는다면, 기본적으로 web page 를 보여주고, 만약 android 이고, 앱이 있다면 안드로이드 앱을 열어줄 것이고, 아이폰이라면 아이폰 앱을 열어줄 수 있다. 즉 app 을 호출하는 url 위에 하나의 layer 를 더 추가한 느낌이다.
app parameter
그리고 또 한가지 쓸만한 점은 param 을 넘길 수 있다는 것이다. 실제로 app 을 열때 param 을 넘기는 방법은 안드로이드 같은 경우(필자는 iphone app 을 개발해 보지 못했다.)에는http://stackoverflow.com/a/2958870 : 여기에 parameter 가 url 의 '/' 로 구분해서 전달되는 것을 보여준다.
아직 여기까지 밖에 이 녀석의 용도를 파악하지 못했다. 다른 용도가 있다면 업데이트 하도록 하겠다.
from : ref. 3 |
AppLink of Bolts framework
이런 App links 를 통해 app 을 열 때 그 과정에서 parameter 등을 parsing 하는 일등을 필요로 한다. 이런 것 이외에도 web page 에서 app link 를 parsing 하는 데 도움을 주는 library 등을 Bolts 에서 지원한다.Reference
- What are App Links? - Redth
- Enabling Deep Links for App Content | Android Developers
- App Links on iOS
- App Links - Cross-platform, open source, and simple mobile deep-linking
댓글 없음:
댓글 쓰기