त्वरित ऐप्स के लिए सीटीएस

इंस्टैंट ऐप्स 10 में से एक प्रमुख विशेषता है, इसलिए यह आवश्यक है कि वे ठीक से काम करें। इंस्टैंट ऐप्स अंतर्निहित रूप से इंस्टॉल किए जाते हैं, इसलिए उनमें क्षमताओं का एक सीमित सेट होता है और वे अधिक प्रतिबंधात्मक सुरक्षा सैंडबॉक्स में चलते हैं। इन प्रतिबंधों की व्यापक प्रकृति के कारण, इंस्टेंट ऐप्स के साथ ठीक से काम न करने पर सिस्टम का कोई भी हिस्सा जोखिम में है। यह सुनिश्चित करने के लिए कि इंस्टेंट ऐप्स द्वारा अनुमत व्यवहार काम कर रहे हैं, एक सीटीएस परीक्षण उपसमुच्चय बनाया गया है। मुख्य विचार पोर्ट पर परीक्षणों के न्यूनतम सेट को अलग करके सीटीएस के आकार में वृद्धि को कम करना है। इंस्टेंट ऐप्स मोड में चलने वाले सीटीएस का अर्थ है टेस्ट एपीके को इंस्टेंट ऐप के रूप में इंस्टॉल करना और परीक्षण चलाना।

त्वरित ऐप प्रतिबंध

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

  • केवल कुछ अनुमतियाँ ही धारण कर सकते हैं।
  • अन्य ऐप्स को तब तक नहीं देख सकते जब तक कि उन ऐप्स को इंस्टेंट ऐप्स के लिए दृश्यमान के रूप में चिह्नित न किया जाए।
  • केवल कुछ सिस्टम सेटिंग्स तक ही पहुंच सकते हैं।
  • केवल कुछ सिस्टम गुणों तक ही पहुंच सकता है।
  • सेवाओं/प्रदाताओं को उजागर नहीं किया जा सकता.
  • प्रसारण के संबंध में विशेष नियमों के साथ प्राप्त और भेज सकते हैं।

इसके अलावा, इंस्टैंट ऐप्स को नए सुरक्षा सैंडबॉक्स में अधिक प्रतिबंध जोड़ने की अनुमति देने का विकल्प चुनना होगा। इंस्टेंट ऐप्स के आसपास विशेष व्यवहारों की यह विस्तृत श्रृंखला पूरे प्लेटफ़ॉर्म को काटती है, इसलिए यह सत्यापित करने का एक तरीका होना चाहिए कि इंस्टेंट ऐप्स पारिस्थितिकी तंत्र में सभी उपकरणों के लिए अपेक्षित रूप से काम करते हैं।

इंस्टेंट ऐप्स मोड में परीक्षण चल रहे हैं

सभी सीटीएस मॉड्यूल में इंस्टेंट ऐप्स पर परीक्षण लागू नहीं होते हैं। यदि मॉड्यूल द्वारा परीक्षण की गई कार्यक्षमता का सिस्टम सर्वर के साथ इंटरेक्शन है, तो इन परीक्षणों को इंस्टेंट ऐप्स मोड में चलाया जाना चाहिए। उदाहरण के लिए, ओपनजीएल परीक्षण सिस्टम सर्वर के साथ इंटरैक्ट नहीं कर रहे हैं और इसलिए उन्हें इंस्टेंट ऐप्स मोड में चलाने की कोई आवश्यकता नहीं है जबकि एक्सेसिबिलिटी परीक्षण सिस्टम सर्वर के साथ इंटरैक्ट करते हैं लेकिन उन्हें इंस्टेंट ऐप्स मोड में चलाने की आवश्यकता है।

यह पहचानने के अलावा कि कौन से मॉड्यूल लागू हैं, उपयोगकर्ताओं को यह निर्धारित करने की आवश्यकता है कि इन मॉड्यूल में कौन से परीक्षण प्रासंगिक हैं। उदाहरण के लिए, प्लग करने योग्य आर्किटेक्चर (उदाहरण के लिए, एक्सेसिबिलिटी सर्विस) के लिए सेवा-विशिष्ट व्यवहारों का परीक्षण इंस्टेंट ऐप मोड के लिए लागू नहीं है क्योंकि इंस्टेंट ऐप्स अन्य ऐप्स (प्लेटफ़ॉर्म सहित) के लिए सेवाओं को उजागर नहीं कर सकते हैं जबकि ऐप-साइड व्यवहारों को मान्य करने वाले परीक्षण होते हैं। इंस्टेंट ऐप्स मोड के लिए लागू। एक अन्य उदाहरण एक परीक्षण है जो एक अनुमति के पीछे के व्यवहार को मान्य करता है जिसे एक इंस्टेंट ऐप नहीं रख सकता है वह इंस्टेंट ऐप मोड में प्रासंगिक नहीं है। परीक्षणों का एक सेट है जो केवल इंस्टेंट ऐप्स पर लागू होता है जो उनके व्यवहार के नियमों को मान्य करता है, उदाहरण के लिए, सेवाओं को उजागर नहीं करना, या अन्य ऐप्स को नहीं देखना। आमतौर पर, ये पहले से ही लिखे होते हैं और इन्हें पोर्ट करने की आवश्यकता नहीं होती है।

इंस्टेंट ऐप्स मोड में परीक्षण विफलताएँ

यदि परीक्षण विफल हो रहा है क्योंकि यह उस कार्यक्षमता को मान्य करता है जिसे इंस्टेंट ऐप्स एक्सेस नहीं कर सकते हैं, तो यह इंस्टेंट ऐप्स मोड में लागू नहीं है। परीक्षण को @AppModeFull के साथ एनोटेट करके केवल पूर्ण ऐप मोड में चलाने के लिए चिह्नित करें। आप इसमें सभी परीक्षणों को बाहर करने के लिए इस एनोटेशन को कक्षा स्तर पर लागू कर सकते हैं।

यदि परीक्षण विफल हो जाता है क्योंकि इंस्टेंट ऐप्स के लिए पहुंच योग्य कुछ कार्यक्षमता टूट गई है, तो बग दर्ज करें

समस्या निवारण

यदि आपका परीक्षण डिवाइस पर MyCtsModule.apk इंस्टॉल करने में विफल रहता है। कारण: '-116' , लॉगकैट पर पैकेजमैनेजर संदेश देखें। उदाहरण के लिए, यदि यह कहता है कि पूर्ण ऐप को इंस्टेंट ऐप से प्रतिस्थापित नहीं किया जा सकता: your_app , तो एडीबी पहले आपके ऐप को अनइंस्टॉल कर दे।