Chrome के साथ Android इंटेंट

ऐसे Android डिवाइस पर किसी वेब पेज से सीधे ऐप्लिकेशन लॉन्च किए जा सकते हैं जिनमें Android इंटेंट. उपयोगकर्ता के जेस्चर का इस्तेमाल करके, ऐप्लिकेशन को लॉन्च करने के लिए कस्टम स्कीम इस्तेमाल करें या intent: सिंटैक्स का इस्तेमाल करें.

इंटेंट ऐंकर बनाएं और उसे पेज में जोड़ें, ताकि उपयोगकर्ता ऐप्लिकेशन लॉन्च करें. इससे यह तय करने में मदद मिलती है कि ऐप्लिकेशन कब और कैसे लॉन्च किए जाएंगे, इसका मतलब है कि Intent Extras की मदद से, ऐप्लिकेशन को जानकारी भेजी जा सकती है.

इंटेंट पर आधारित यूआरआई का बेसिक सिंटैक्स इस तरह है:

intent:  
   HOST/URI-path // Optional host  
   #Intent;  
      package=\[string\];  
      action=\[string\];  
      category=\[string\];  
      component=\[string\];  
      scheme=\[string\];  
   end;

पार्स करने के बारे में जानकारी के लिए Android सोर्स कोड देखें.

जब किसी इंटेंट का समाधान नहीं होता है या कोई बाहरी ऐप्लिकेशन लॉन्च नहीं होता है, उपयोगकर्ता को फ़ॉलबैक यूआरएल पर रीडायरेक्ट किया जा सकता है. आपके पास फ़ॉलबैक यूआरएल बनाने का विकल्प होता है एक और इंटेंट के साथ:

S.browser_fallback_url=[encoded_full_url]

S.<name> परिभाषा वाले इंटेंट एक्स्ट्रा का इस्तेमाल करें. यह खास अतिरिक्त है पुराने सिस्टम के साथ काम करने की सुविधा. Chrome browser_fallback_url को हटा देता है, ताकि टारगेट ऐप्लिकेशन में यह वैल्यू नहीं दिखती.

Chrome इन स्थितियों में बाहरी ऐप्लिकेशन लॉन्च नहीं करेगा:

  • इस इंटेंट का समाधान नहीं किया जा सकता. दूसरे शब्दों में, कोई भी ऐप्लिकेशन इंटेंट को हैंडल नहीं कर सकता.
  • JavaScript टाइमर ने उपयोगकर्ता के जेस्चर के बिना ही एक ऐप्लिकेशन को खोलने की कोशिश की.

उदाहरण

Zxing बारकोड स्कैनर ऐप्लिकेशन को लॉन्च करने के लिए यहां एक इंटेंट दिया गया है:

intent:  
   //scan/  
   #Intent;  
      package=com.google.zxing.client.android;  
      scheme=zxing;  
   end;

Zxing बारकोड स्कैनर ऐप्लिकेशन लॉन्च करने के लिए, ऐंकर पर अपने href को कोड में बदलें:

  <a href="intent://scan/#Intent;scheme=zxing;package=com.google.zxing.client.android;end">
    Take a QR code
  </a>

Android Zxing मेनिफ़ेस्ट देखें, जो पैकेज और होस्ट के बारे में जानकारी देता है.

फ़ॉलबैक यूआरएल तय किए जाने पर, पूरा यूआरएल ऐसा दिखता है:

   <a href="intent://scan/#Intent;scheme=zxing;package=com.google.zxing.client.android;S.browser_fallback_url=http%3A%2F%2Fzxing.org;end">
    Take a QR code
  </a>

अगर ऐप्लिकेशन नहीं मिलता, तो अब यूआरएल लोगों को zxing.org पर भेज देता है. इसका यह लिंक होता है: जो उपयोगकर्ता के जेस्चर के बिना JavaScript से ट्रिगर होते हैं या ऐसे मामलों में जहां हम कोई बाहरी ऐप्लिकेशन लॉन्च करें.

ज़रूरी बातें

अगर किसी ऐसे इंटेंट के साथ Android पर की गई गतिविधि शुरू की जाती है जिसमें Extras शामिल हो, तो आप यह जानकारी भी शामिल कर सकते हैं.

सिर्फ़ कैटगरी फ़िल्टर वाली गतिविधियां, android.intent.category.BROWSABLE को इस विधि का उपयोग करके शुरू किया जा सकता है, क्योंकि इससे पता चलता है कि ऐप्लिकेशन सुरक्षित है ब्राउज़र से खोलने के लिए.

Chrome किसी दिए गए इंटेंट यूआरआई के लिए बाहरी ऐप्लिकेशन लॉन्च नहीं करेगा, अगर:

  • इंटेंट यूआरआई को टाइप किए गए यूआरएल से रीडायरेक्ट किया जाता है;
  • इंटेंट यूआरआई को उपयोगकर्ता के जेस्चर के बिना शुरू किया जाता है.