ऐप्लिकेशन की मुख्य क्वालिटी

यह संग्रहित की गई कॉपी है, जिसे पिछली बार 10 फ़रवरी, 2021 को अपडेट किया गया था. आप यह भी कर सकते हैं मौजूदा इवेंट देखें दिशा-निर्देशों के बारे में ज़्यादा जानें.

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

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

क्वालिटी चेकलिस्ट के हर आइटम का एक यूनीक आईडी होता है, जो आपको दिख सकता है टीम के साथ बातचीत करते समय इसका इस्तेमाल करें.

विज़ुअल अनुभव

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

जगह आईडी जाँचें ब्यौरा
नेविगेशन वीएक्स-एन1 सीआर-3 ऐप्लिकेशन, वापस जाएं बटन के सामान्य नेविगेशन के साथ काम करता है. इसमें, स्क्रीन पर दिए गए किसी भी कस्टम "वापस जाएं" बटन का इस्तेमाल नहीं किया जाता प्रॉम्प्ट.
वीएक्स-एन2 सीआर-3 यह ऐप्लिकेशन, होम स्क्रीन पर वापस जाने / जाने के लिए जेस्चर नेविगेशन की सुविधा देता है.
वीएक्स-एन3 CR-1
CR-3
CR-5

ऐप्लिकेशन, उपयोगकर्ता या ऐप्लिकेशन की स्थिति को सही तरीके से सेव करके रखता है और उसे पहले जैसा करता है.

फ़ोरग्राउंड से बाहर निकलने पर, ऐप्लिकेशन उपयोगकर्ता या ऐप्लिकेशन की स्थिति को सुरक्षित रखता है. साथ ही, यह ऐप्लिकेशन पर वापस जाने और इस पर स्थितियों में होने वाले अन्य बदलावों की वजह से डेटा को मिटने से बचाता है.

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

  1. जब 'हाल ही के' ऐप्लिकेशन स्विचर से ऐप्लिकेशन को फिर से शुरू किया जाता है, तो ऐप्लिकेशन उपयोगकर्ता को ठीक उसी स्थिति में वापस ले जाता है जिसमें उसे पिछली बार इस्तेमाल किया गया था.
  2. डिवाइस के स्लीप (लॉक किया हुआ) होने पर जब ऐप्लिकेशन को फिर से शुरू किया जाता है, तो ऐप्लिकेशन उपयोगकर्ता को ठीक उसी स्थिति में वापस ले आता है जिसमें उसे पिछली बार इस्तेमाल किया गया था.
  3. जब ऐप्लिकेशन को होम पेज या सभी ऐप्लिकेशन से दोबारा लॉन्च किया जाता है, तो उसे इनमें से कोई एक काम करना चाहिए. यह इस बात पर निर्भर करता है कि पिछली बार उसे इस्तेमाल किए हुए कितना समय हुआ है:
    • अगर ऐप्लिकेशन को कुछ देर पहले (मिनट) इस्तेमाल किया गया था, तो ऐप्लिकेशन की स्थिति को जितना हो सके उतना पहले जैसा करें.
    • अगर ऐप्लिकेशन को इस्तेमाल किए जाने के बाद ज़्यादा समय बीत चुका है, तो ऐप्लिकेशन को उसकी पिछली स्थिति के जितना हो सके उतना करीब लाने की कोशिश करें; या उसे इसकी होम स्क्रीन या किसी अन्य डिफ़ॉल्ट स्थिति से शुरू करें.
सूचनाएं वीएक्स-एस1 सीआर-9

सूचनाएं, मटीरियल डिज़ाइन से जुड़े दिशा-निर्देशों का पालन करती हैं. खास तौर पर:

  1. सूचनाओं का इस्तेमाल, दूसरे प्रॉडक्ट का प्रमोशन करने या अन्य प्रॉडक्ट के विज्ञापन दिखाने के लिए नहीं किया जाता. ऐसा इसलिए, क्योंकि Play Store ने इस पर सख्त पाबंदी लगाई है.
  2. एक चैनल की सभी सूचनाएं देने के बजाय, सबसे सही तरीकों के हिसाब से सूचना चैनल तय करें.
  3. सूचना की सही प्राथमिकता चुनें.
  4. जहां भी मुमकिन हो, कई सूचनाओं को एक ही सूचना ग्रुप में रखा जाता है.
  5. जहां भी ज़रूरी हो वहां सूचनाओं के लिए टाइम आउट सेट करें.
  6. सूचनाएं सिर्फ़ तब भेजी जाती हैं, जब वे किसी चल रहे इवेंट से जुड़ी होती हैं. जैसे, संगीत चलाना (फ़ंक्शनलिटी सेक्शन में ज़्यादा जानकारी) या फ़ोन कॉल.
वीएक्स-एस2 सीआर-9

मैसेज / सोशल मीडिया ऐप्लिकेशन और बातचीत के लिए:

  1. बातचीत के लिए MessagingStyle नोटिफ़िकेशन का इस्तेमाल करें.
  2. सीधे जवाब देने की कार्रवाई करने की सुविधा दें.
  3. बातचीत के शॉर्टकट का इस्तेमाल करें और सीधे तौर पर शेयर करने की सबसे अच्छी रैंकिंग पाने के लिए, सबसे सही तरीके लागू करें.
  4. बबल्स की मदद करें.
यूज़र इंटरफ़ेस (यूआई) और ग्राफ़िक्स वीएक्स-यू1 सीआर-5 अगर मुमकिन हो, तो ऐप्लिकेशन में लैंडस्केप और पोर्ट्रेट, दोनों तरह के ओरिएंटेशन काम करते हैं.

इस तरह के फ़ॉर्मैट में काफ़ी हद तक एक जैसी सुविधाएं और कार्रवाइयां होती हैं. साथ ही, इनके काम करने के तरीके एक जैसे बने रहते हैं. कॉन्टेंट या व्यू में मामूली बदलाव किए जा सकते हैं.

वीएक्स-यू2 सीआर-5 ऐप दोनों ओरिएंटेशन में पूरी स्क्रीन का इस्तेमाल करता है और ओरिएंटेशन में बदलावों के लिए लेटरबॉक्स नहीं करता है.

स्क्रीन की ज्यामिति में छोटे-छोटे बदलावों की भरपाई करने के लिए छोटे लेटरबॉक्स किए गए वीडियो मंज़ूर किए जाते हैं.

वीएक्स-यू3 सीआर-5 ऐप्लिकेशन, रेंडरिंग में कोई समस्या आए या उसकी स्थिति खराब किए बिना, डिसप्ले ओरिएंटेशन के बीच तेज़ी से हुए ट्रांज़िशन को सही तरीके से मैनेज करता है.
विज़ुअल क्वालिटी वीएक्स-वी1 सीआर-सभी

इस ऐप्लिकेशन में ग्राफ़िक्स, टेक्स्ट, इमेज, और यूज़र इंटरफ़ेस (यूआई) के दूसरे एलिमेंट दिखते हैं. इसलिए, इनमें कोई खास डिस्टॉर्शन, धुंधला या पिक्सलेशन नहीं होता.

  1. ऐप्लिकेशन को जहां भी हो सके, वेक्टर ड्रॉएबल का इस्तेमाल करना चाहिए.
  2. यह ऐप्लिकेशन, टारगेट किए गए सभी स्क्रीन साइज़ और डिवाइस के नाप या आकार के लिए अच्छी क्वालिटी के ग्राफ़िक उपलब्ध कराता है.
  3. मेनू, बटन और अन्य यूज़र इंटरफ़ेस (यूआई) एलिमेंट के किनारों पर कोई एलियासिंग दिखाई नहीं देता.
वीएक्स-वी2 सीआर-सभी

ऐप्लिकेशन, इस्तेमाल की जा सकने वाली हर भाषा के लिए टेक्स्ट और टेक्स्ट ब्लॉक को सही तरीके से दिखाता है.

  1. कंपोज़िशन का इस्तेमाल किसी भी नाप या आकार में किया जा सकता है.
  2. कोई भी कट-ऑफ़ अक्षर या शब्द नहीं दिखते.
  3. बटन या आइकॉन में कोई गलत शब्द रैप नहीं दिखता.
  4. टेक्स्ट और आस-पास के एलिमेंट के बीच काफ़ी स्पेस है.
वीएक्स-वी3 सीआर-सभी ऐप्लिकेशन का कॉन्टेंट और ऐप्लिकेशन का बताया गया सारा वेब कॉन्टेंट, गहरे रंग वाली थीम के साथ काम करता है.

मुख्य सुविधाएं

आपके ऐप्लिकेशन को उस फ़ंक्शन को लागू करना चाहिए जो उम्मीद के मुताबिक काम करता है.

जगह आईडी जाँचें ब्यौरा
ऑडियो FN-ए1 CR-1
CR-8
ऐप्लिकेशन के फ़ोरग्राउंड में वापस जाने पर ऑडियो फिर से शुरू हो जाता है. इसके अलावा, जब उपयोगकर्ता को यह पता चलता है कि वीडियो रुका हुआ है.
एफ़एन-ए2 सीआर-1
सीआर-2
सीआर-8
अगर ऑडियो प्लेबैक एक मुख्य सुविधा है, तो ऐप्लिकेशन में बैकग्राउंड में वीडियो चलाने की सुविधा होनी चाहिए.
एफ़एन-ए3 सीआर-0

जब उपयोगकर्ता ऑडियो प्लेबैक शुरू करता है, तो ऐप्लिकेशन को एक सेकंड के अंदर इनमें से कोई एक काम करना चाहिए:

  1. ऑडियो चलाना शुरू करें.
  2. साफ़ तौर पर बताएं कि ऑडियो डेटा तैयार किया जा रहा है.
एफ़एन-ए4 सीआर-0 ऑडियो चलने पर, ऐप्लिकेशन को ऑडियो फ़ोकस का अनुरोध करना चाहिए और प्लेबैक बंद होने पर, ऑडियो फ़ोकस को बंद कर देना चाहिए.
एफ़एन-ए5 सीआर-0 ऐप्लिकेशन को ऑडियो फ़ोकस के लिए, दूसरे ऐप्लिकेशन के अनुरोधों को मैनेज करना चाहिए. उदाहरण के लिए, हो सकता है कि कोई ऐप्लिकेशन किसी दूसरे ऐप्लिकेशन के बोले गए शब्दों को पढ़कर सुनाए. ऐसा होने पर, वह ऐप्लिकेशन वीडियो की आवाज़ कम कर सकता है.
मीडिया एफ़एन-एम1 CR-0
CR-6
CR-8
अगर ऐप्लिकेशन, बैकग्राउंड में ऑडियो चलाता है, तो इसे MediaStyle के साथ स्टाइल की गई सूचना बनानी चाहिए.
एफ़एन-एम2 सीआर-0 अगर ऐप्लिकेशन पर वीडियो चलता है, तो उसमें पिक्चर में पिक्चर की सुविधा होनी चाहिए.
एफ़एन-एम3 सीआर-0 अगर ऐप्लिकेशन, वीडियो को कोड में बदलता है, तो इसे HEVC वीडियो कंप्रेशन स्टैंडर्ड का इस्तेमाल करके एन्कोड करना चाहिए.
शेयर करें एफ़एन-एस1 सीआर-0 ऐप्लिकेशन को कॉन्टेंट शेयर करते समय, Android शेयरशीट का इस्तेमाल करना चाहिए. यह ऐसे टारगेट का सुझाव दे सकता है जो कस्टम समाधानों के लिए उपलब्ध नहीं हैं.
बैकग्राउंड में चलने वाली सेवा एफ़एन-बी1 सीआर-6 ऐप्लिकेशन जहां भी हो सके, बैकग्राउंड में चलने वाली सेवाओं को चलाने से बचते हैं. उपयोगकर्ता का डिवाइस बिना किसी रुकावट के काम करे, यह पक्का करने के लिए सिस्टम, बैकग्राउंड सेवाओं पर कई पाबंदियां लागू करता है. बैकग्राउंड में चलने वाली सेवाओं के इस्तेमाल को अच्छा नहीं माना जाता:
  • सूचनाओं के लिए नेटवर्क कनेक्शन बनाए रखना
  • ब्लूटूथ कनेक्शन बनाए रखना
  • GPS को चालू रखना

अपने काम के लिए सही समाधान चुनने का तरीका जानें.

एफ़एन-बी2 सीआर-10 यह ऐप्लिकेशन, पावर मैनेजमेंट की उन सुविधाओं के साथ काम करता है जो Android 6.0 (Doze और ऐप्लिकेशन स्टैंडबाय मोड) में आई थीं. इस मामले में, पावर मैनेजमेंट की वजह से मुख्य फ़ंक्शन में रुकावट आने पर, सिर्फ़ ज़रूरी शर्तें पूरी करने वाले ऐप्लिकेशन ही छूट का अनुरोध कर सकते हैं. Doze और ऐप्लिकेशन स्टैंडबाय में इस्तेमाल के अन्य उदाहरणों के लिए सहायता देखें.

परफ़ॉर्मेंस और स्थिरता

आपके ऐप्लिकेशन को परफ़ॉर्मेंस, स्थिरता, साथ काम करने की क्षमता, और रिस्पॉन्स मिलने में लगने वाला समय नहीं लगता.

जगह आईडी जाँचें ब्यौरा
ऐप्लिकेशन को क्रैश या फ़्रीज़ होने जैसी समस्याओं से बचाना पीएस-एस1 सीआर-ऑल
एसडी-1
ऐप्लिकेशन क्रैश नहीं होता या उन यूज़र इंटरफ़ेस (यूआई) थ्रेड को ब्लॉक करें जिनकी वजह से ANR की गड़बड़ी हो रही है (Android Not जवाब दिया जा रहा है”) से जुड़ी गड़बड़ियां. इस्तेमाल करें Google ऐप्लिकेशन के लॉन्च होने से पहले की गई Google Play की रिपोर्ट से, ऐप्लिकेशन क्रैश होने से जुड़ी संभावित समस्याओं का पता लगाया जा सकता है. डिप्लॉयमेंट के बाद, पेमेंट करें Android की ज़रूरी जानकारी वाले पेज पर दी गई जानकारी Play कंसोल.
परफ़ॉर्मेंस पीएस-पी1 सीआर-ऑल
एसडी-1
अगर ऐप्लिकेशन को लोड होने में दो सेकंड से ज़्यादा समय लगता है, तो ऐप्लिकेशन तेज़ी से लोड होता है या उपयोगकर्ता को स्क्रीन पर फ़ीडबैक देता है. जैसे, प्रोग्रेस इंडिकेटर या इससे मिलता-जुलता क्यू.
पीएस-पी2 सीआर-ऑल
एसडी-1
60 फ़्रेम प्रति सेकंड हासिल करने के लिए, ऐप्लिकेशन को हर 16 मि॰से॰ में फ़्रेम रेंडर होने चाहिए. डेवलपर, टेस्टिंग में प्रोफ़ाइल HWUI रेंडरिंग विकल्प का इस्तेमाल कर सकते हैं. अगर समस्याएं होती हैं, तो धीमी रेंडरिंग का पता लगाने के लिए टूल उपलब्ध हैं.
पीएस-पी3 दोपहर 1 बजे StrictMode के चालू होने पर (यहां StrictMode टेस्टिंग देखें), तो ऐप्लिकेशन की जांच करते समय लाल रंग की कोई चमक (StrictMode से परफ़ॉर्मेंस से जुड़ी चेतावनियां) नहीं दिखेगी. कोई भी लाल चमक, स्टोरेज, नेटवर्क ऐक्सेस या मेमोरी लीक से जुड़ी खराब परफ़ॉर्मेंस की ओर इशारा करती है.
SDK टूल पीएस-टी1 सीआर-0 यह ऐप्लिकेशन, Android प्लैटफ़ॉर्म के सबसे नए सार्वजनिक वर्शन पर काम करता है. साथ ही, यह क्रैश या मुख्य फ़ंक्शन पर गंभीर असर नहीं डालता.
पीएस-टी2 एसपी-1 ऐप्लिकेशन targetSdk वैल्यू सेट करके नए Android SDK को टारगेट करता है.
पीएस-टी3 एसपी-1 compileSdk वैल्यू सेट करके, ऐप्लिकेशन को SDK टूल के सबसे नए वर्शन के साथ बनाया गया है.
पीएस-टी4 SP-2
SP-3
तीसरे पक्ष के इस्तेमाल किए गए सभी SDK टूल अप-टू-डेट होते हैं. इन SDK टूल में किए जाने वाले किसी भी तरह के सुधार, जैसे कि स्थिरता, साथ काम करने की सुविधा या सुरक्षा को समय पर उपयोगकर्ताओं के लिए उपलब्ध कराया जाना चाहिए.

किसी भी तीसरे पक्ष के SDK टूल के साथ-साथ, पूरे ऐप्लिकेशन के कोड बेस के लिए डेवलपर ज़िम्मेदार होता है.
पीएस-टी5 सीआर-0 ऐप्लिकेशन में SDK टूल के अलावा किसी दूसरे इंटरफ़ेस का इस्तेमाल न किया गया हो.
बैटरी पीएस-बी1 बीए-1 यह ऐप्लिकेशन, पावर मैनेजमेंट की उन सुविधाओं के साथ काम करता है जो Android 6.0 (Doze और ऐप्लिकेशन स्टैंडबाय मोड) में आई थीं. ऐसे मामले में जहां पावर मैनेजमेंट की वजह से मुख्य फ़ंक्शन में रुकावट आती हो, सिर्फ़ ज़रूरी शर्तें पूरी करने वाले ऐप्लिकेशन ही छूट का अनुरोध कर सकते हैं. डेवलपमेंट के दौरान, डेवलपर ADB के इन निर्देशों का इस्तेमाल करके, ऐप्लिकेशन के स्टैंडबाय मोड की जांच कर सकते हैं और उसे सोख सकते हैं.

बैटरी खर्च की समस्या का पता लगाने के लिए डेवलपर, Android Studio के एनर्जी प्रोफ़ाइलर या बैटरी हिस्टॉरियन टूल का इस्तेमाल कर सकते हैं. इन टूल को बैकग्राउंड में पहले से तय तरीके से काम करने के साथ-साथ, अचानक से बैटरी खर्च होने का पता लगाने के लिए भी इस्तेमाल किया जा सकता है.

निजता और सुरक्षा

आपके ऐप्लिकेशन को उपयोगकर्ता के डेटा और निजी जानकारी को सुरक्षित तरीके से मैनेज करना चाहिए, आपके पास सही लेवल पर जाने की अनुमति है.

इस चेकलिस्ट के अलावा, Google Play पर पब्लिश किए गए ऐप्लिकेशन स्टोर को उपयोगकर्ता के डेटा के लिए बनी नीतियों का भी पालन करना होगा की नीतियों का पालन करना होगा. निजता.

जगह आईडी जाँचें ब्यौरा
अनुमतियां एससी-पी1 SC-4 ऐप्लिकेशन सिर्फ़ उन अनुमतियों का अनुरोध करता है जिनकी कम से कम संख्या उसके इस्तेमाल के उदाहरण के हिसाब से ज़रूरी होती है. जगह की जानकारी जैसी कुछ अनुमतियों के लिए, जगह की सटीक जानकारी के बजाय अनुमानित जगह की जानकारी का इस्तेमाल करें.
एससी-पी2

ऐप्लिकेशन को सिर्फ़ संवेदनशील जानकारी (जैसे कि एसएमएस, कॉल लॉग या जगह की जानकारी) या सेवाएं, जिनके लिए पैसे खर्च करने होते हैं, जैसे कि डायलर या एसएमएस. के उदाहरण हैं. इन अनुमतियों से जुड़ी जानकारी, उपयोगकर्ता को साफ़ तौर पर ज़ाहिर की जानी चाहिए.

अनुमतियों का इस्तेमाल करने के आपके तरीके के आधार पर, अन्य तरीका आपके ऐप्लिकेशन के इस्तेमाल का उदाहरण पूरा करने के लिए, संवेदनशील जानकारी के ऐक्सेस के भरोसे रहें. उदाहरण के लिए, अगर आपने किसी उपयोगकर्ता के संपर्क की जानकारी की अनुमति मांगी है, तो ऐक्सेस का अनुरोध करना बेहतर रहेगा इंप्लिसिट इंटेंट का इस्तेमाल करके.

एससी-पी3 सीआर-0 ऐप्लिकेशन, रनटाइम की अनुमतियों का अनुरोध तब करता है, जब ऐप्लिकेशन के शुरू होने के दौरान ही यह अनुमतियों का अनुरोध किया जाता है. हालांकि, यह तब दिखता है, जब इसके फ़ंक्शन का अनुरोध किया जाता है.
एससी-पी4 सीआर-0

ऐप्लिकेशन को अपना UX डिज़ाइन करना चाहिए, ताकि यह साफ़ तौर पर बताया जा सके कि कुछ अनुमतियों की ज़रूरत क्यों है. अगर ऐसा है संभव नहीं है, तो उसे बताएं कि आपके ऐप्लिकेशन की किसी सुविधा के लिए अनुमति की ज़रूरत क्यों है.

जब ऐप्लिकेशन को ग्रेसफ़ुली डिग्रेड करना चाहिए, तब उपयोगकर्ता किसी अनुमति को अस्वीकार या रद्द करते हैं. ऐप्लिकेशन को उपयोगकर्ता को ऐप्लिकेशन ऐक्सेस करने से पूरी तरह रोकना नहीं चाहिए.

डेटा और फ़ाइल एससी-डीएफ़1 SC-1 सारा संवेदनशील डेटा, ऐप्लिकेशन के स्टोरेज में सेव किया जाता है.
एससी-डीएफ़2 SC-10 सिस्टम लॉग या ऐप्लिकेशन के हिसाब से बनाए गए लॉग में, उपयोगकर्ता का कोई भी निजी या संवेदनशील डेटा मौजूद नहीं है.
एससी-डीएफ़3 ऐप्लिकेशन को पहचान के लिए, ऐसे किसी भी हार्डवेयर आईडी का इस्तेमाल नहीं करना चाहिए जो रीसेट न किया जा सकने वाला हार्डवेयर आईडी हो, जैसे कि IMEI.
पहचान एससी-आईडी1 सीआर-0 खाते के क्रेडेंशियल और क्रेडिट कार्ड की जानकारी, घर या ऑफ़िस का पता, और फ़ोन नंबर जैसी अन्य संवेदनशील जानकारी ऑटोमैटिक भरने की सुविधा के लिए संकेत दें.
एससी-आईडी2 सीआर-0 बिना किसी रुकावट के साइन इन करने के अनुभव के लिए, One Tap for Android को इंटिग्रेट करें.
एससी-आईडी3 सीआर-0 वित्तीय लेन-देन या उपयोगकर्ता के अहम दस्तावेज़ों जैसी संवेदनशील जानकारी को सुरक्षित रखने के लिए, बायोमेट्रिक पुष्टि को इंटिग्रेट करें.
ऐप्लिकेशन के कॉम्पोनेंट एससी-एसी1 SC-5 ऐप्लिकेशन के सिर्फ़ ऐसे कॉम्पोनेंट एक्सपोर्ट किए जाते हैं जो अन्य ऐप्लिकेशन के साथ डेटा शेयर करते हैं या जिन्हें दूसरे ऐप्लिकेशन को इस्तेमाल करने के लिए इस्तेमाल किया जाना चाहिए.

इसमें गतिविधियां, सेवाएं, ब्रॉडकास्ट रिसीवर,और खास तौर पर कॉन्टेंट देने वाले शामिल हैं.

डिफ़ॉल्ट वैल्यू के बारे में भ्रम की स्थिति को कम करने के लिए, android:exported एट्रिब्यूट को हमेशा साफ़ तौर पर सेट करें.

एससी-एसी2 CR-0
SC-4

सभी इंटेंट और ब्रॉडकास्ट, सबसे सही तरीकों का पालन करते हैं:

  1. अगर डेस्टिनेशन ऐप्लिकेशन अच्छी तरह से बताया गया है, तो अश्लील इंटेंट का इस्तेमाल करें.
  2. किसी ऐसे ऐप्लिकेशन के लिए अनुमतियां रोकने के लिए इंटेंट का इस्तेमाल करें जिसे पहले से ही अनुमति मिली हुई है.
  3. सभी ऐप्लिकेशन के बीच सुरक्षित तरीके से डेटा शेयर करें.
  4. पेलोड वाले इंटेंट की इस्तेमाल करने से पहले पुष्टि की जाती है.
  5. अगर आपको किसी इंटेंट को दूसरे ऐप्लिकेशन में पास करना है, ताकि पाने वाला ऐप्लिकेशन, कॉल करने वाले ऐप्लिकेशन में कॉलबैक कर सके और उसे कॉलबैक कर सके, तो अतिरिक्त में नेस्ट किए गए इंटेंट को शामिल न करें. PendingIntent का इस्तेमाल करें.
  6. अपने PendingIntents को सेट अप करते समय, जहां लागू हो वहां नहीं बदले जा सकने वाले फ़्लैग को साफ़ तौर पर सेट करें.
एससी-एसी3 SC-3 आपके ऐप्लिकेशन के बीच कॉन्टेंट शेयर करने वाले सभी कॉन्टेंट देने वाले, पसंद के मुताबिक अनुमतियों के लिए android:protectionLevel="signature" का इस्तेमाल करते हैं. इसमें गतिविधियां, सेवाएं, ब्रॉडकास्ट रिसीवर, और खास तौर पर कॉन्टेंट देने वाले शामिल हैं. ज़्यादातर ऐप्लिकेशन को, इंस्टॉल किए गए पैकेज की सूची को ऐक्सेस करने के भरोसे नहीं रहना चाहिए. Android 11 और इसके बाद के वर्शन में, इन सुविधाओं के ऐक्सेस पर पाबंदी लगाई गई है.
नेटवर्किंग एससी-एन1 SC-9 सारा नेटवर्क ट्रैफ़िक एसएसएल पर भेजा जाता है.
एससी-एन2 SC-6 यह ऐप्लिकेशन, नेटवर्क सुरक्षा कॉन्फ़िगरेशन का एलान करता है.
एससी-एन3 अगर ऐप्लिकेशन Google Play services का इस्तेमाल करता है, तो ऐप्लिकेशन शुरू होने पर सुरक्षा सेवा देने वाली कंपनी शुरू हो जाती है.
पुस्तकालय एससी-यू1 एसपी-2 सभी लाइब्रेरी, SDK टूल, और डिपेंडेंसी अप-टू-डेट हैं.
एससी-यू2 प्रोडक्शन ऐप्लिकेशन में कोई डीबग लाइब्रेरी शामिल नहीं की जाती है. इससे परफ़ॉर्मेंस के साथ-साथ सुरक्षा से जुड़ी समस्याएं हो सकती हैं.
वेबव्यू एससी-डब्ल्यू1 SC-6 लोकल कॉन्टेंट ऐक्सेस करने के लिए, setAllowUniversalAccessFromFileURLs() का इस्तेमाल न करें. इसके बजाय, WebViewAssetLoader का इस्तेमाल करें.
एससी-डब्ल्यू2 SC-7 वेबव्यू को गैर-भरोसेमंद कॉन्टेंट के साथ addJavaScriptInterface() का इस्तेमाल नहीं करना चाहिए.

Android 6.0 और उसके बाद वाले वर्शन पर, एचटीएमएल मैसेज चैनल का इस्तेमाल करें.

प्लान लागू करना एससी-ई1 ऐप्लिकेशन, ऐप्लिकेशन के APK के बाहर से कोड को डाइनैमिक तरीके से लोड नहीं करता. डेवलपर को Android ऐप्लिकेशन बंडल का इस्तेमाल करना चाहिए. इसमें, Play Feature Delivery और Play ऐसेट डिलीवरी की सुविधा शामिल है.

अगस्त 2021 से, Google Play Store में शामिल सभी नए ऐप्लिकेशन के लिए Android ऐप्लिकेशन बंडल का इस्तेमाल करना ज़रूरी हो जाएगा.

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

Google Play

पक्का करें कि आपके ऐप्लिकेशन Google Play पर पब्लिश किए जा सकते हैं.

जगह आईडी जाँचें ब्यौरा
नीतियां जीपी-पी1 सभी गेम ऐप्लिकेशन Google Play डेवलपर सामग्री नीति की शर्तों का पूरी तरह से पालन करता है और गलत सामग्री ऑफ़र नहीं करता है, दूसरों की बौद्धिक संपत्ति या ब्रैंड का इस्तेमाल नहीं करता है और इसी तरह की अन्य शर्तें.
जीपी-पी2 जीपी-1 ऐप्लिकेशन का मैच्योरिटी लेवल, कॉन्टेंट रेटिंग के दिशा-निर्देशों के आधार पर सही तरीके से सेट किया गया हो.
ऐप्लिकेशन की ज़्यादा जानकारी वाला पेज जीपी-डी1 GP-1
GP-2

ऐप्लिकेशन का फ़ीचर ग्राफ़िक, इस सहायता लेख पढ़ें. सुनिश्चित करें कि:

  1. ऐप लिस्टिंग में अच्छी क्वालिटी का फ़ीचर ग्राफ़िक शामिल होता है.
  2. फ़ीचर ग्राफ़िक में डिवाइस की ऐसी इमेज, स्क्रीनशॉट या छोटा टेक्स्ट नहीं है जिन्हें छोटा करने के बाद, पढ़ा नहीं जा सकता. साथ ही, इन्हें आपके ऐप्लिकेशन की सबसे छोटी स्क्रीन पर दिखाया जा सकता है.
  3. फ़ीचर ग्राफ़िक किसी विज्ञापन जैसा नहीं है.
जीपी-डी2 जीपी-1 ऐप्लिकेशन के स्क्रीनशॉट और वीडियो में, Android के अलावा कोई दूसरा डिवाइस न तो दिखता है और न ही उसका रेफ़रंस होता है.
जीपी-डी3 जीपी-1 ऐप्लिकेशन के स्क्रीनशॉट या वीडियो में, आपके ऐप्लिकेशन के कॉन्टेंट और अनुभव को गुमराह करने के तरीके से न दिखाया गया हो.
इस्तेमाल करने वाले के लिए सहायता जीपी-एक्स1 जीपी-1 Google Play पेज के 'समीक्षाएं' टैब में, उपयोगकर्ताओं की ओर से रिपोर्ट की गई सामान्य गड़बड़ियों को ठीक कर दिया जाता है. ऐसा तब किया जाता है, जब गड़बड़ी फिर से जनरेट होती हो और कई अलग-अलग डिवाइसों पर होती हों. अगर कोई गड़बड़ी सिर्फ़ कुछ डिवाइसों में आती है, तब भी आपको उन डिवाइसों पर उसे ठीक करना चाहिए. ऐसा तब होता है, जब आपके डिवाइस नए हों या लोकप्रिय हों.

टेस्ट एनवायरमेंट सेट अप करना

इस चेकलिस्ट के लिए टेस्ट एनवायरमेंट सेट अप करने के लिए, हम आपको ये सुझाव देते हैं:

  • एम्युलेटर टेस्टिंग पर फ़ोकस - Android Emulator, अलग-अलग Android वर्शन और स्क्रीन रिज़ॉल्यूशन पर आपके ऐप्लिकेशन को टेस्ट करने का शानदार तरीका है. अपने टारगेट उपयोगकर्ता आधार के लिए, आम तौर पर इस्तेमाल होने वाले डिवाइसों के नाप या आकार और हार्डवेयर/सॉफ़्टवेयर के कॉम्बिनेशन दिखाने के लिए, आपको इम्युलेट किए गए डिवाइस (एवीडी) सेट अप करने चाहिए.
  • हार्डवेयर डिवाइस - आपके टेस्ट एनवायरमेंट में कुछ ऐसे असल हार्डवेयर डिवाइस होने चाहिए जो उपभोक्ताओं के लिए फ़िलहाल उपलब्ध मुख्य फ़ॉर्म फ़ैक्टर और हार्डवेयर/सॉफ़्टवेयर के कॉम्बिनेशन को दिखाते हैं. मार्केट में उपलब्ध हर डिवाइस पर टेस्ट करना ज़रूरी नहीं है — इसके बजाय, आपको हर डिवाइस के नाप या आकार के लिए, एक या दो डिवाइसों का इस्तेमाल करने पर भी, बहुत कम डिवाइसों पर ही फ़ोकस करना चाहिए.
  • डिवाइस टेस्ट लैब - कई तरह के डिवाइसों पर अपने ऐप्लिकेशन की जांच करने के लिए, Firebase टेस्ट लैब जैसी तीसरे पक्ष की सेवाओं का भी इस्तेमाल किया जा सकता है.
  • Android के नए वर्शन के साथ जांच करना - टारगेट किए गए उपयोगकर्ता आधार के लिए Android के नए वर्शन की जांच करने के अलावा, आपको हमेशा Android के सबसे नए वर्शन (फ़िलहाल, Android 11) की जांच करनी चाहिए. इससे यह पक्का होता है कि व्यवहार में हुए नए बदलाव आपके उपयोगकर्ता के अनुभव पर गलत असर न डालें.

यूनिट टेस्टिंग, इंटिग्रेशन, और यूज़र इंटरफ़ेस (यूआई) टेस्टिंग के साथ-साथ टेस्टिंग के बारे में ज़्यादा जानकारी पाने के लिए, Android की टेस्टिंग की बुनियादी बातें देखें.

प्रक्रियाओं की जांच करना

जांच के इन तरीकों से, आपको क्वालिटी से जुड़ी अलग-अलग तरह की समस्याओं का पता लगाने में मदद मिलती है आपका ऐप्लिकेशन. अलग-अलग टेस्ट को एक साथ जोड़ा जा सकता है या टेस्ट के ग्रुप को एक साथ इंटिग्रेट किया जा सकता है. टेस्ट प्लान तैयार करने में मदद मिलेगी. ऊपर दिए गए सेक्शन में उन रेफ़रंस के लिए देखें जो चैनल से जुड़े हैं कुछ शर्तों को पूरा करते हैं.

टाइप टेस्ट ब्यौरा
मुख्य सुइट CR-0

ऐप्लिकेशन के सभी हिस्सों पर जाएं — सभी स्क्रीन, डायलॉग, सेटिंग, और सभी यूज़र फ़्लो पर जाएं.

  1. अगर ऐप्लिकेशन में बदलाव करने या कॉन्टेंट बनाने, गेम खेलने या मीडिया चलाने की अनुमति दी जाती है, तो उन फ़्लो की जांच ज़रूर कर लें.
  2. ऐप्लिकेशन की जांच करते समय, अन्य ऐप्लिकेशन के इस्तेमाल में आने वाली रुकावटों के बारे में बताएं, जैसे कि सूचना या फ़ोन कॉल पाना; और डिवाइस की विशेषताओं, जैसे कि नेटवर्क कनेक्टिविटी, बैटरी फ़ंक्शन, GPS की उपलब्धता, और सिस्टम लोड में अस्थायी बदलाव लागू करें.
  3. सभी इन-ऐप्लिकेशन परचेज़ फ़्लो डालें और उनकी जांच करें
सीआर-1 हर ऐप स्क्रीन से, डिवाइस की होम कुंजी दबाएं या जेस्चर वाले नेविगेशन में ऊपर की ओर स्वाइप करें, फिर सभी ऐप्स स्क्रीन से ऐप को फिर से लॉन्च करें.
सीआर-2 हर ऐप्लिकेशन की स्क्रीन पर, चल रहे किसी दूसरे ऐप्लिकेशन पर स्विच करें. इसके बाद, 'हाल ही के' ऐप्लिकेशन स्विचर का इस्तेमाल करके, ऐप्लिकेशन पर वापस आएं.
सीआर-3 हर ऐप्लिकेशन की स्क्रीन और डायलॉग बॉक्स पर, 'वापस जाएं' बटन दबाएं या पीछे की ओर स्वाइप करने वाले हाथ के जेस्चर का इस्तेमाल करें.
सीआर-5 हर ऐप्लिकेशन की स्क्रीन से, डिवाइस को कम से कम तीन बार लैंडस्केप और पोर्ट्रेट ओरिएंटेशन के बीच घुमाएं.
सीआर-6 टेस्ट ऐप्लिकेशन को बैकग्राउंड में भेजने के लिए, किसी दूसरे ऐप्लिकेशन पर स्विच करें. सेटिंग में जाएं और देखें कि बैकग्राउंड में जांच के लिए बनाए गए ऐप्लिकेशन में कोई सेवा चल रही है या नहीं. Android 4.0 और उसके बाद वाले वर्शन में, ऐप्लिकेशन स्क्रीन पर जाएं और ऐप्लिकेशन को "चल रहा है" में ढूंढें करें.
सीआर-7 डिवाइस को स्लीप मोड (कम बैटरी मोड) में ले जाने के लिए पावर बटन दबाएं. इसके बाद, स्क्रीन चालू करने के लिए फिर से पावर बटन दबाएं.
सीआर-8 डिवाइस पर स्क्रीन लॉक सेट अप करें. डिवाइस को स्लीप मोड (कम बैटरी मोड) में ले जाने के लिए पावर बटन दबाएं (इससे डिवाइस लॉक हो जाता है). इसके बाद, स्क्रीन को चालू करने और डिवाइस को अनलॉक करने के लिए पावर बटन को फिर से दबाएं.
सीआर-9 सूचनाओं वाले पैनल में, ऐप्लिकेशन के दिखाए जा सकने वाली सभी तरह की सूचनाओं को ट्रिगर करें और देखें. जहां लागू हो वहां नोटिफ़िकेशन विस्तृत करें (Android 4.1 और उसके बाद वाले वर्शन) और सभी उपलब्ध कार्रवाइयों पर टैप करें.
CR-10 Doze और ऐप्लिकेशन स्टैंडबाय में इस्तेमाल के अन्य मामलों के बारे में जानने के लिए, सहायता टीम से संपर्क करें.
एसडी कार्ड से इंस्टॉल करें एसडी-1 डिवाइस के एसडी कार्ड में ऐप्लिकेशन इंस्टॉल करके Core Suite को दोहराएं (अगर ऐप्लिकेशन, इंस्टॉल करने के इस तरीके की सुविधा देता है).

ऐप्लिकेशन को एसडी कार्ड में ले जाने के लिए, सेटिंग > ऐप्लिकेशन की जानकारी > एसडी कार्ड में ले जाएं.

परफ़ॉर्मेंस और स्थिरता एसपी-1 Android मेनिफ़ेस्ट फ़ाइल की समीक्षा करें और कॉन्फ़िगरेशन बिल्ड करें, ताकि यह पक्का किया जा सके कि ऐप्लिकेशन को नए SDK टूल (targetSdk और compileSdk) के हिसाब से बनाया गया है या नहीं.
एसपी-2 किसी भी पुरानी डिपेंडेंसी के लिए build.gradle फ़ाइल की समीक्षा करें.
एसपी-3 बिना SDK टूल वाले इंटरफ़ेस के इस्तेमाल का पता लगाने के लिए, Android Studio लिंट टूल का इस्तेमाल करें. टेस्टिंग के अन्य तरीके भी मौजूद हैं.
परफ़ॉर्मेंस को मॉनिटर करना शाम 1 StrictMode प्रोफ़ाइलिंग चालू करके, Core Suite को दोहराएं.

कचरा इकट्ठा करने और उपयोगकर्ता अनुभव पर इसके असर पर खास ध्यान दें.

बैटरी बीए-1 बैटरी बचाने और ऐप स्टैंडबाय साइकल के दौरान Core Suite को दोहराएं.

अलार्म, टाइमर, सूचनाओं, सिंक वगैरह पर खास ध्यान दें. ज़रूरी शर्तों और दिशा-निर्देशों के लिए, डोज़ और ऐप्लिकेशन स्टैंडबाय के साथ टेस्टिंग देखें.

सुरक्षा एससी-1 बाहरी स्टोरेज में सेव किया गया सारा डेटा देखें.
एससी-2 देखें कि बाहरी स्टोरेज से लोड किए गए डेटा को कैसे मैनेज और प्रोसेस किया जाता है.
एससी-3 Android मेनिफ़ेस्ट फ़ाइल में बताए गए सभी कॉन्टेंट देने वालों की समीक्षा करें. पक्का करें कि सेवा देने वाली हर कंपनी के पास, सही protectionLevel हो.
SC-4 मेनिफ़ेस्ट फ़ाइल, रनटाइम, और डिवाइस की ऐप्लिकेशन सेटिंग स्क्रीन (सेटिंग > ऐप्लिकेशन की जानकारी) में जाकर, अपने ऐप्लिकेशन के लिए ज़रूरी सभी अनुमतियों की समीक्षा करें.
SC-5 एक्सपोर्ट की सही स्थिति जानने के लिए, Android मेनिफ़ेस्ट फ़ाइल में बताए गए सभी ऐप्लिकेशन कॉम्पोनेंट की समीक्षा करें. एक्सपोर्ट की गई प्रॉपर्टी, सभी कॉम्पोनेंट के लिए अलग से सेट की जानी चाहिए.
SC-6 ऐप्लिकेशन के नेटवर्क सुरक्षा कॉन्फ़िगरेशन की समीक्षा करें और पक्का करें कि कॉन्फ़िगरेशन पर कोई लिंट जांच फ़ेल न हो.
SC-7 हर वेबव्यू के लिए, ऐसे पेज पर जाएं जिसके लिए JavaScript की ज़रूरत हो.
SC-8 हर वेबव्यू में, ऐसी साइटों और कॉन्टेंट पर जाने की कोशिश करें जो आपके ऐप्लिकेशन में सीधे तौर पर लोड नहीं हैं.
SC-9 ऐसे नेटवर्क सिक्योरिटी कॉन्फ़िगरेशन का एलान करें जो cleartext ट्रैफ़िक को बंद करता है. इसके बाद, ऐप्लिकेशन की जांच करें.
SC-10 डिवाइस लॉग देखते समय, ऐप्लिकेशन चलाएं और सभी मुख्य फ़ंक्शन का इस्तेमाल करें. उपयोगकर्ता की कोई निजी जानकारी लॉग नहीं की जानी चाहिए.
Google Play जीपी-1 अपनी डेवलपर प्रोफ़ाइल, ऐप्लिकेशन के ब्यौरे, स्क्रीनशॉट, फ़ीचर ग्राफ़िक, कॉन्टेंट रेटिंग, और उपयोगकर्ता के सुझाव, शिकायत या राय की समीक्षा करने के लिए Google Play कंसोल में साइन इन करें.
जीपी-2 अपने फ़ीचर ग्राफ़िक और स्क्रीनशॉट डाउनलोड करें. इसके बाद, उनका साइज़ छोटा करें, ताकि वे आपके टारगेट किए गए डिवाइसों के डिसप्ले साइज़ और नाप या आकार से मैच कर सकें.
जीपी-3 ऐप्लिकेशन में या एक्सपैंशन फ़ाइल डाउनलोड करने के दौरान पैकेज किए गए सभी ग्राफ़िकल ऐसेट, मीडिया, टेक्स्ट, कोड लाइब्रेरी, और अन्य कॉन्टेंट की समीक्षा करें.

StrictMode के साथ जांच करना

हमारा सुझाव है कि परफ़ॉर्मेंस की जांच करने के लिए, अपने खाते में StrictMode को चालू करें ऐप और उसका इस्तेमाल उन कार्रवाइयों को पकड़ने के लिए कर रहा है जो परफ़ॉर्मेंस, नेटवर्क ऐक्सेस, फ़ाइल वगैरह पर असर डाल सकती हैं पढ़ना/लिखना वगैरह. मुख्य थ्रेड और प्लैटफ़ॉर्म, दोनों पर ऐसे ऑपरेशन देखें जिनमें समस्याएं आ सकती हैं अन्य थ्रेड.

हर थ्रेड के लिए निगरानी की नीति सेट अप करने के लिए, StrictMode.ThreadPolicy.Builder और इसके साथ काम करने वाली, मॉनिटरिंग की सुविधा चालू करें. ThreadPolicy इसका इस्तेमाल कर रहे हैं detectAll().

पक्का करें कि आपने नीचे दी गई नीति के उल्लंघनों के लिए, विज़ुअल सूचना चालू की हो ThreadPolicy इसका इस्तेमाल कर रहे हैं penaltyFlashScreen().