패키징된 앱에서 앱이 가로채고 처리하려는 URL 패턴을 지정하는 데 사용됩니다. 앱은 이 매니페스트 항목 아래에 식별자, URL 패턴, 제목이 각각 있는 여러 URL 핸들러를 정의할 수 있습니다. 다음은 url_handlers
를 지정하는 방법의 예입니다.
"url_handlers": {
"view_foo_presentation": {
"matches": [
"https://www.foo.com/presentation/view/*"
],
"title": "View Foo presentation"
},
"view_bar_presentation": {
"matches": [
"https://www.bar.com/view/slideshow/*"
],
"title": "View bar presentation"
},
"edit_spreadsheet": {
"matches": [
"https://www.foo.com/spreadsheet/edit/*",
"https://www.bar.com/spreadsheet/edit/*"
],
"title": "Edit spreadsheet"
}
}
앱은 소유한 도메인 내의 URL 패턴만 처리하도록 등록할 수 있습니다. 즉, Chrome 웹 스토어에서 결정한 대로 소유권을 증명할 수 있습니다. 이 요구사항을 위반하고 외부 URL 처리를 등록하려는 앱은 업로드 시 Chrome 웹 스토어에서 거부됩니다.
즉, matches
아래의 모든 패턴에 항상 전체 도메인이 지정되어야 합니다. 그러지 않으면 소유권을 확인할 수 없습니다.
등록 및 설치가 완료되면 브라우저 탭 내에서 일치하는 모든 탐색과 다른 앱에 대해 앱이 실행됩니다. 앱은 일치하는 핸들러의 식별자 (예: 위의 'view_foo_presentation'), 이동하는 URL, 리퍼러의 URL이 포함된 launchData 객체와 함께 새로운 종류의 app.runtime.onLaunched 이벤트를 수신합니다.
title
필드는 나중에 모든 관련 UI 요소에 사용할 수 있도록 예약되어 있습니다. 이 유형의 URL 핸들러로 실행될 때 앱이 실행하는 작업을 설명해야 합니다.