url_handlers

Wordt gebruikt door verpakte apps om URL-patronen op te geven die de app wil onderscheppen en verwerken. Een app kan onder dit manifestitem meerdere URL-handlers definiëren, die elk een ID, een URL-patroon en een titel hebben. Hier is een voorbeeld van hoe url_handlers specificeert:

"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"
  }
}

Apps kunnen zich alleen registreren om URL-patronen te verwerken binnen domeinen waarvan ze eigenaar zijn, dat wil zeggen waarvan ze het eigendom kunnen bewijzen, zoals bepaald door de Chrome Web Store . Apps die deze vereiste schenden en zich proberen te registreren voor het verwerken van externe URL's, worden bij het uploaden afgewezen door de Chrome Web Store.

Dit betekent automatisch dat voor alle patronen onder matches altijd minimaal een volledig domein moet worden opgegeven. Anders kan het eigendom niet worden geverifieerd.

Na succesvolle registratie en installatie wordt er een app gelanceerd voor alle overeenkomende navigatie binnen browsertabbladen en andere apps. De app ontvangt een nieuw soort app.runtime.onLaunched- gebeurtenis, waarbij het object launchData de ID van de overeenkomende handler bevat (zoals 'view_foo_presentation' hierboven), de URL waarnaar wordt genavigeerd en de URL van de verwijzende gebruiker.

Het title is gereserveerd voor toekomstig gebruik in alle relevante UI-elementen. Het moet de actie beschrijven die de app uitvoert wanneer deze wordt gestart met dit type URL-handler.