डिवाइस और नेटवर्क का गलत इस्तेमाल

इस लेख में बदलाव होने जा रहे हैं

इस लेख को उन बदलावों के हिसाब से अपडेट कर दिया जाएगा जिनका एलान हाल ही में किया गया है.

हमने डिवाइस और नेटवर्क का गलत इस्तेमाल रोकने से जुड़ी नीति में एक नया उदाहरण शामिल किया है. इसके मुताबिक, हम किसी भी ऐप्लिकेशन को इस बात की अनुमति नहीं देते कि वह फ़ुल-स्क्रीन पर सूचनाएं दिखाने की अनुमति का इस्तेमाल करके, उपयोगकर्ताओं को परेशान करने वाले विज्ञापन या सूचनाएं ज़बरदस्ती दिखाए. (यह अपडेट 31 मई, 2024 से लागू होगा)

अपडेट किए गए “डिवाइस और नेटवर्क का गलत इस्तेमाल” लेख की झलक देखने के लिए, इस पेज पर जाएं.

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

Google Play पर मौजूद सभी ऐप्लिकेशन को, Google Play पर ऐप्लिकेशन की क्वालिटी के लिए दिशा-निर्देशों में बताए गए डिफ़ॉल्ट Android सिस्टम ऑप्टिमाइज़ेशन की ज़रूरी शर्तों को पूरा करना होगा.

Google Play से इंस्टॉल होने वाले ऐप्लिकेशन को अपडेट करने, बदलने या उसमें बदलाव करने के लिए, सिर्फ़ Google Play के अपडेट करने का तरीका इस्तेमाल किया जा सकता है. किसी और तरीके से शायद ऐसा नहीं हो पाए. इसी तरह, किसी ऐप्लिकेशन के लिए Google Play के अलावा किसी अन्य स्रोत से एक्ज़ीक्यूटेबल कोड (उदाहरण के लिए, dex, JAR, .so फ़ाइलें) डाउनलोड नहीं किया जा सकता. यह पाबंदी, उस कोड पर लागू नहीं होती जो किसी वर्चुअल मशीन या इंटरप्रटर पर काम करता है और दोनों में से किसी को Android एपीआई का सीधे तौर पर ऐक्सेस (जैसे कि वेबव्यू या ब्राउज़र में JavaScript ) नहीं देता है. 

ऐसे ऐप्लिकेशन या तीसरे पक्ष के कोड (उदाहरण के लिए, SDK टूल) को किसी भी स्थिति में Google Play की नीतियों का उल्लंघन नहीं करने देना चाहिए जो रन टाइम (उदाहरण के लिए, बिना ऐप्लिकेशन पैकेज के) पर लोड की गई भाषाओं (उदाहरण के लिए, JavaScript, Python, Lua वगैरह) का इस्तेमाल करते हैं.

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

आम तौर पर होने वाले उल्लंघनों के उदाहरण
  • ऐसे ऐप्लिकेशन जो विज्ञापन दिखाने पर अन्य ऐप्लिकेशन को ब्लॉक कर देते हैं या फिर उसमें रुकावट डालते हैं.
  • गेम में धोखाधड़ी करने वाले ऐप्लिकेशन जो अन्य ऐप्लिकेशन के गेमप्ले पर असर डालते हैं.
  • ऐसे ऐप्लिकेशन जो सेवाओं, सॉफ़्टवेयर या हार्डवेयर को हैक करने का तरीका बताते हैं या उसकी सुविधा देते हैं. साथ ही, वे उसके सुरक्षा उपायों को गच्चा देने में भी मदद करते हैं.
  • ऐसे ऐप्लिकेशन जो किसी सेवा या एपीआई का इस्तेमाल या ऐक्सेस इस तरह करते हैं, जिससे इसकी सेवा की शर्तों का उल्लंघन होता है.
  • ऐसे ऐप्लिकेशन जिन्हें व्हाइटलिस्ट करने की मंज़ूरी नहीं है. साथ ही, जो सिस्टम पावर मैनेजमेंट को नज़रअंदाज़ करने की कोशिश करते हैं.
  • ऐसे ऐप्लिकेशन जो तीसरे पक्ष को प्रॉक्सी सेवा देते हैं, वे ऐसा सिर्फ़ उन ऐप्लिकेशन में कर सकते हैं जिनका मुख्य मकसद ही प्रॉक्सी सेवा देना है.
  • ऐप्लिकेशन या तीसरे पक्ष के कोड (उदाहरण के लिए, SDK टूल) जो Google Play के अलावा, किसी दूसरे स्रोत से इस्तेमाल किया जा सकने वाला कोड डाउनलोड करते हैं. इस तरह के कोड में dex फ़ाइलें और नेटिव कोड शामिल हैं.
  • ऐसे ऐप्लिकेशन जो इस्तेमाल करने वाले व्यक्ति की अनुमति के बिना, दूसरे ऐप्लिकेशन को डिवाइस में इंस्टॉल करते हैं.
  • ऐसे ऐप्लिकेशन जो नुकसान पहुंचाने वाले सॉफ़्टवेयर से लिंक कर देते हैं या लोगों तक उन्हें पहुंचाने या इंस्टॉल करने की सुविधा देते हैं.
  • ऐप्लिकेशन या तीसरे पक्ष के कोड (उदाहरण के लिए, SDK टूल) जिनमें JavaScript इंटरफ़ेस वाला वेबव्यू होता है. यह वेबव्यू गैर-भरोसेमंद वेब कॉन्टेंट (जैसे कि http:// URL) या गैर-भरोसेमंद स्रोतों (जैसे कि गलत इंटेंट वाले यूआरएल) से मिले, बिना पुष्टि वाले यूआरएल लोड करता है.

 

फ़ोरग्राउंड सेवा का इस्तेमाल

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

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

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

ऊपर दी गई शर्तों में, फ़ोरग्राउंड सेवा के इस्तेमाल के ये मामले शामिल नहीं होते:

  • फ़ोरग्राउंड सेवा का टाइप systemExempted या shortService हो;
  • फ़ोरग्राउंड सेवा का टाइप dataSync हो. इसे सिर्फ़ तब शामिल नहीं किया जाएगा, जब Play ऐसेट डिलीवरी की सुविधाओं का इस्तेमाल किया जा रहा हो

फ़ोरग्राउंड सेवा के इस्तेमाल के बारे में ज़्यादा जानकारी यहां दी गई है.

 

User-Initiated Data Transfer Jobs

ऐप्लिकेशन को सिर्फ़ user-initiated data transfer jobs API का इस्तेमाल करने की अनुमति है, अगर:

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

User-Initiated Data Transfer APIs के बारे में ज़्यादा जानकारी यहां दी गई है.

 

Flag_Secure सेटिंग के लिए ज़रूरी शर्तें

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

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

जिन ऐप्लिकेशन को सुलभता टूल के तौर पर मंज़ूरी मिली होती है उन्हें इस शर्त को पूरा नहीं करना पड़ता. उन्हें यह छूट तब तक मिलती है, जब तक वे FLAG_SECURE से सुरक्षित कॉन्टेंट को उपयोगकर्ता के डिवाइस के बाहर ऐक्सेस किए जाने के लिए, न तो भेजते हैं और न ही उसे स्टोर या कैश मेमोरी में सेव करते हैं.

 

उपयोगकर्ता के डिवाइस पर मौजूद Android कंटेनर पर काम करने वाले ऐप्लिकेशन

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

सिक्योर एनवायरमेंट मेनिफ़ेस्ट फ़्लैग

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

क्या यह उपयोगी था?

हम उसे किस तरह बेहतर बना सकते हैं?
खोजें
खोज हटाएं
खोज बंद करें
मुख्य मेन्यू
10183537772578876257
true
खोज मदद केंद्र
true
true
true
true
true
92637
false
false