본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[android] browser 에서 link 클릭했을 때 app selection 없이 내 앱으로 연결하기 (app link)

by 돼지왕 왕돼지 2019. 2. 1.
반응형




.well-known, 30x redirect, Action, android app link, android search screen, android.intent.action.view, android.intent.category.browsable, android:autoVerify, app link, app links, app 단위, assetlinks.json, autoverify, browser link app launch, Category, deep link, deep link vs app link, Google Assistant, Google Search, HTTP, instant app, intent filter autoverify, intent-filter, package_name, scheme, scheme https, sha256_cert_fingerprints, [android] browser 에서 link 클릭했을 때 app selection 없이 내 앱으로 연결하기, 완전한 targeting


-

Browser 에서 link 클릭했을 때 App 으로 연결하는 기능(App 이 실행되는 기능)을 “App Links” 라고 부른다.



-

App Links 를 사용하기 위해서는 아래와 같은 설정이 필요하다.


1. intent-filter tag 에 속성으로 android:autoVerify=“true” 를 넣어준다.

    Intent filter 로 android.intent.action.VIEW 를 action 으로, android.intent.category.BROWSABLE 를 category 로 설정해준다.

    scheme으로 http, https 둘 다 설정해준다. 그리고 host 등의 specific 한 주소를 넣어준다. 

2. assetlinks.json 파일을 해당 웹 페이지가 존재하는 web domain 의 /.well-known/assetlinks.json 에 위치시킨다. ( 아무 주소나 내가 ownership 을 가지면 안 되니까.. 인증개념으로 필요 )

3. 테스트한다.



-

assetlinks.json 파일의 양식은 아래 링크를 참조하면 된다.

https://developer.android.com/training/app-links/verify-site-associations.html


핵심은 앱 검증을 위해 해당 앱의 package_name 과 sha256_cert_fingerprints 등이 들어간다는 것이다.



-

App Link verification 은 app 단위로 진행된다. (intent-filter 단위가 아니다.)



-

App LInk verification 은 30x redirect 를 지원하지 않는다.



-

link 에는 두 종류가 있다. 하나는 deep link, 하나는 android app link 이다.


deep link 는 user 를 앱의 특정 content 로 이동시키는 것이다.

intent filter 에 구체적으로 명시해서 원하는 activity 로 바로 이동시키는 것이다. ( 우리가 일반적으로 알고 있는 intent-filter data tag 방식 )

그러나 해당 url 을 다른 앱도 처리하도록 등록했을 수 있다. 이 경우 바로 이동을 할 수 없다.


android app link 는 android 6.0 (API Level 23, MOS) 이상에서 사용할 수 있다.

이 녀석은 특정 url 에 대해서 완전한 targeting (ownership 을 가질 수 있음) 을 할 수 있다.



-

Android app link 는 다음의 장점이 있다.


1. 안정적이고 타겟을 정확히 지정할 수 있다.

2. UX 를 방해하지 않는다. ( 앱 인스톨이 안 되어 있다면 browser 에서 페이지가 계속 진행된다. )

3. Android instant apps 의 support 를 받을 수 있다. 즉 app install 하지 않고 기능을 사용할 수 있다. 

4. Google search 로 부터 실행이 가능하다. Google 관련된 browser 의 검색 결과로 해당 contents 가 노출되었을 때 바로 해당 내용을 볼 수 있다. (Google Search app, Android Search screen, Google Assistant)



-

https://plus.google.com/+AndroidDevelopers/posts/BPyTSdWgLVV

https://developer.android.com/training/app-links/index.html?linkId=18745188#app-links-vs-deep-links



반응형

댓글