url_handlers

पैकेज किए गए ऐप्लिकेशन की ओर से इस्तेमाल किए जाने वाले, ऐसे यूआरएल पैटर्न तय करते हैं जिन्हें ऐप्लिकेशन इंटरसेप्ट और हैंडल करना चाहता है. इस मेनिफ़ेस्ट एंट्री में ऐप्लिकेशन, कई यूआरएल हैंडलर डाल सकता है. हर हैंडलर में एक आइडेंटिफ़ायर, यूआरएल पैटर्न, और शीर्षक होना चाहिए. यहां 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"
  }
}

ऐप्लिकेशन सिर्फ़ अपने मालिकाना हक वाले डोमेन में मौजूद यूआरएल पैटर्न को मैनेज करने के लिए रजिस्टर कर सकते हैं. इसका मतलब है कि Chrome वेब स्टोर में बताए गए तरीके से, ऐप्लिकेशन का मालिकाना हक साबित किया जा सकता है. इस ज़रूरी शर्त का उल्लंघन करने वाले और बाहरी यूआरएल को हैंडल करने के लिए रजिस्टर करने की कोशिश करने वाले ऐप्लिकेशन को अपलोड करने पर, 'Chrome वेब स्टोर' अस्वीकार कर देगा.

इसका मतलब अपने-आप है कि matches से जुड़े सभी पैटर्न के लिए, कम से कम एक पूरा डोमेन हमेशा शामिल किया जाना चाहिए. ऐसा नहीं करने पर, मालिकाना हक की पुष्टि नहीं की जा सकती.

रजिस्ट्रेशन और इंस्टॉल हो जाने के बाद, ब्राउज़र टैब के साथ-साथ दूसरे ऐप्लिकेशन के अंदर सभी मिलते-जुलते नेविगेशन के लिए एक ऐप्लिकेशन लॉन्च किया जाएगा. ऐप्लिकेशन को एक नए तरह का app.runtime.onLaunched इवेंट मिलेगा, जिसमें LaunchData ऑब्जेक्ट में मैच होने वाले हैंडलर का आइडेंटिफ़ायर (जैसे, ऊपर दिया गया "view_foo_presentation") होगा, जिस यूआरएल पर नेविगेट किया जा रहा है, और रेफ़रर का यूआरएल शामिल होगा.

title फ़ील्ड को सभी काम के यूज़र इंटरफ़ेस (यूआई) एलिमेंट में आने वाले समय में इस्तेमाल के लिए रिज़र्व रखा गया है. इसमें इस तरह के यूआरएल हैंडलर के साथ लॉन्च होने पर ऐप्लिकेशन की कार्रवाई की जानकारी होनी चाहिए.