Android 인스턴트 앱은 설치 없이 실행되는 앱의 작은 버전입니다. 사용자는 APK를 설치하지 않고 URL을 클릭하기만 하면 앱이 실행됩니다. 따라서 모든 인스턴트 앱은 Android App Links를 사용하여 선언된 URL을 통해 액세스할 수 있어야 합니다. 이 페이지에서는 Android 인스턴트 앱에 Android App Links를 사용하는 방법을 설명합니다.
앱 링크 개요
먼저, 다음은 앱 링크에 관해 이미 알고 있어야 하는 사항의 요약입니다.
- 사용자가 URL 링크를 사용하여 앱의 특정 화면으로 바로 이동할 수 있는 앱 활동에 관한 인텐트 필터를 만드는 경우 이를 '딥 링크'라고 합니다. 하지만 다른 앱에서도 비슷한 URL 인텐트 필터를 선언할 수 있으므로, 시스템에서 사용자에게 어떤 앱을 열지 묻는 메시지가 표시될 수 있습니다. 이러한 딥 링크를 만들려면 앱 콘텐츠 딥 링크 만들기를 참조하세요.
- 앱의 HTTP 딥 링크에 해당하는
assetlinks.json
파일을 웹사이트에 게시할 때 앱이 이러한 URL의 실제 소유자인지 확인합니다. 따라서 딥 링크를 Android App Links로 변환하여 사용자가 URL을 클릭할 때 앱이 즉시 열리도록 합니다. 앱 링크를 만들려면 Android App Links 인증하기를 참고하세요.
따라서 Android App Links는 웹사이트의 소유가 확인된 HTTP 딥 링크이므로 사용자가 어떤 앱을 열지 선택할 필요가 없습니다. 자세한 설명은 딥 링크와 앱 링크의 차이점을 참고하세요.
하지만 두 경우 모두, 사용자가 이미 앱을 설치한 상태여야 합니다. 사용자가 웹사이트 링크 중 하나를 클릭했는데 앱이 설치되어 있지 않고 다른 앱이 해당 URL 인텐트를 처리하지 않는 경우 URL이 웹브라우저에서 열립니다. 따라서 인스턴트 앱을 만들면 이 부분이 해결됩니다. 사용자가 앱을 설치하지 않아도 URL을 클릭하기만 하면 앱을 열 수 있습니다.
최종 사용자가 Google에서 앱을 검색하면 Google 검색에서 '인스턴트' 배지와 함께 URL을 표시합니다.
인스턴트 앱용 앱 링크의 다른 점
앱 콘텐츠 딥 링크 만들기 및 Android 앱 링크 확인 가이드를 이미 따랐다면 앱 링크가 인스턴트 앱에서 작동하도록 하는 데 필요한 대부분의 작업을 이미 완료한 것입니다. 인스턴트 앱에 앱 링크를 사용할 때 몇 가지 추가 규칙이 있습니다.
인스턴트 앱에서 앱 링크로 사용되는 모든 인텐트 필터는 HTTP와 HTTPS를 모두 지원해야 합니다. 예:
<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:scheme="http" android:host="www.example.com" /> <data android:scheme="https" /> </intent-filter>
각
<intent-filter>
요소 내에서 각<data>
속성의 모든 조합이 유효한 것으로 간주되므로 (이 인텐트 필터가https://www.example.com
를 확인)하므로host
를 두 번째<data>
요소에 포함하지 않아도 됩니다.웹사이트 도메인별로 인스턴트 앱을 하나씩만 선언할 수 있습니다. 이는 웹사이트를 여러 앱과 연결할 수 있는 설치 가능한 앱의 앱 링크를 만드는 경우와는 다릅니다.
앱 링크 작성 시 기타 고려사항
- 인스턴트 앱의 모든 HTTP URL 인텐트 필터는 설치 가능한 앱에 포함되어야 합니다. 사용자가 전체 앱을 설치한 후에는 URL을 탭하면 항상 인스턴트 앱이 아닌 설치된 앱이 열리므로 이는 중요합니다.
- 인스턴트 앱과 설치 가능한 앱에서 모두 하나 이상의 인텐트 필터에
autoVerify="true"
를 설정해야 합니다. 자동 확인 사용 설정 방법을 참고하세요. - HTTPS 프로토콜을 사용하여 각 도메인 및 앱 링크에서 지원하는 하위 도메인에 대해 하나의
assetlinks.json
를 게시해야 합니다. 여러 호스트에서 앱 링크를 지원하는 방법을 참고하세요. assetlinks.json
파일은 유효한 JSON이어야 하고, 리디렉션 없이 제공되어야 하며, 봇이 액세스할 수 있어야 합니다 (robots.txt
에서/.well-known/assetlinks.json
크롤링을 허용해야 함).- 인텐트 필터의 호스트 속성에 와일드 카드를 사용하지 않는 것이 좋습니다. 여러 하위 도메인에서 앱 링크를 지원하는 방법을 참고하세요.
- 맞춤 호스트/스키마 URL은 별도의 인텐트 필터를 사용해 선언해야 합니다.
- 앱 링크 URL이 주요 검색어의 인기 검색결과에 포함되도록 하세요.