현재 맡고있는 웹뷰 프로젝트에 .well-known 폴더를 생성 후 assetlinks.json을 추가하였는데, 이 파일이 어떤 역할을 하는지 왜 필요한지 정리해보려고 한다.
.well-known/assetlinks.json 는 Digital Asset Links 라는 구글의 표준 스펙에 따라 만들어지는 파일이다. 이 파일은 웹사이트와 모바일 앱(특히 Android앱) 간의 신뢰 관계를 증명하기 위해 사용한다.
쉽게 말해,
이 웹 사이트는 이 안드로이드 앱과 같은 소유자다. 라는 소유권을 증명하는 것이다.
이 과정을 통해 Android 시스템이 웹과 앱을 같은 주체가 운영하는것으로 인식하게 되고, 그에 따른 다양한 기능을 활성화할 수 있게 된다.
Digital Asset Links는 구글이 만든 매커니즘으로 두 개의 디지털 자산(예를 들어 웹 사이트와 모바일 앱)이 서로를 신뢰하고 있음을 공식적으로 선언할 수 있도록 해주는 시스템이다.
이러한 시스템을 통해 Android는 다음과 같은 결정을 내릴 수 있다.
다음은 실제 .well-known/assetlinks.json 파일의 예시이다.
<[
{
"relation": ["delegate_permission/common.handle_all_urls"],
"target": {
"namespace": "android_app",
"package_name": "com.example.myapp",
"sha256_cert_fingerprints": [
"AB:CD:EF:12:34:56:78:90:AA:BB:CC:DD:..."
]
}
}
]