url_handlers

패키지 앱이 앱에서 가로채서 처리하려는 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 아래의 모든 패턴에 항상 하나 이상의 완전한 도메인이 지정되어야 합니다. 그렇지 않으면 소유권을 확인할 수 없습니다.

등록 및 설치가 완료되면 다른 앱뿐만 아니라 브라우저 탭 내부의 일치하는 모든 탐색을 위해 앱이 실행됩니다. 앱은 새로운 종류의 app.runtime.onLaunched 이벤트를 수신하며, 일치하는 핸들러의 식별자 (예: 위의 'view_foo_presentation')가 포함된 launchData 객체와 이동할 URL, 리퍼러의 URL을 포함합니다.

title 필드는 나중에 모든 관련 UI 요소에서 사용할 수 있도록 예약되어 있습니다. 이 유형의 URL 핸들러로 시작될 때 앱이 실행하는 작업을 설명해야 합니다.