डिवाइस का प्रावधान करें

डिवाइसों का प्रावधान करने के कई तरीके हैं. आपके ग्राहकों की कारोबार की ज़रूरी शर्तों से यह तय होता है कि आपको प्रावधान करने के कौनसे तरीके इस्तेमाल करने हैं.

डिवाइस को सेट अप करने से जुड़ी बुनियादी बातें

डिवाइस को सेट अप करने से जुड़ी वे स्थितियां जिनके साथ आपके ग्राहक काम करना चाहते हैं (जैसे कि 'ऑफ़िस में निजी डिवाइस का इस्तेमाल' या कंपनी के मालिकाना हक वाला), ऑपरेशन के वे मोड तय करते हैं जिनका इस्तेमाल आपको करना है (जैसे कि डिवाइस मालिक वाला मोड या प्रोफ़ाइल के मालिक वाला मोड). इसी तरह, कार्रवाई और Android रिलीज़ के मोड के लिए आपको यह तय करने की ज़रूरत होगी कि आप प्रावधान के कौनसे तरीके लागू करेंगे.

डिप्लॉयमेंट की स्थितियां

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

ऐसी कंपनियां जो BYOD डिप्लॉयमेंट की सुविधा देती हैं, तो उनके कर्मचारियों को निजी तौर पर मालिकाना हक वाले डिवाइस, काम करने में

कार्रवाई के मोड

कंपनी के मालिकाना हक वाले डिप्लॉयमेंट, डिवाइस के मालिक वाले मोड पर काम करते हैं. Android में, आपके मैनेजमेंट ऐप्लिकेशन को डिवाइस पॉलिसी कंट्रोलर (DPC) कहा जाता है. DPC, Android के साथ चलने वाले डिवाइस पर नीतियां लागू करता है. डिवाइस के मालिक के तौर पर काम करने पर, DPC पूरे डिवाइस को मैनेज करता है. डिवाइस के मालिक के तौर पर, DPC की मदद से पूरे डिवाइस पर कार्रवाइयां की जा सकती हैं. जैसे, डिवाइस के हिसाब से कनेक्टिविटी कॉन्फ़िगर करना, ग्लोबल सेटिंग कॉन्फ़िगर करना, और फ़ैक्ट्री रीसेट करना.

'ऑफ़िस में निजी डिवाइस का इस्तेमाल' के डिप्लॉयमेंट, प्रोफ़ाइल के मालिक मोड पर काम करते हैं. DPC की मदद से, एंटरप्राइज़ काम के लिए निजी डिवाइस चालू करता है. ऐसा करने के लिए, डिवाइस के मुख्य उपयोगकर्ता खाते में वर्क प्रोफ़ाइल जोड़ी जाती है. वर्क प्रोफ़ाइल, मुख्य उपयोगकर्ता से जुड़ी होती है, लेकिन एक अलग प्रोफ़ाइल के तौर पर. प्रोफ़ाइल के मालिक के तौर पर, DPC सिर्फ़ डिवाइस पर मौजूद वर्क प्रोफ़ाइल को मैनेज करता है. साथ ही, उसके पास वर्क प्रोफ़ाइल के बाहर सीमित कंट्रोल होता है.

डिवाइस के मालिक के प्रावधान करने के तरीके

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

इस्तेमाल के उदाहरण के आधार पर, डिवाइस मालिक मोड का प्रावधान करने के दो तरीके हैं.

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

ध्यान दें: अगर Play में कुछ खास देशों में अपना ऐप्लिकेशन उपलब्ध कराया जाता है, तो डिवाइस के मालिक के प्रावधान के दौरान इन पाबंदियों को नज़रअंदाज़ कर दिया जाता है. DPC को डाउनलोड किया जाएगा, भले ही डिवाइस टारगेट किए गए देश में न हो.

प्रोफ़ाइल के मालिक को सेट अप करने के तरीके

प्रोफ़ाइल के मालिक वाले मोड की कार्रवाई का प्रावधान करने के लिए, सुझाया गया तरीका इस बात पर निर्भर करता है कि संगठन, Google Workspace का इस्तेमाल करता है या नहीं.

  • Google Workspace के मामले में, सुझाया गया तरीका उपयोगकर्ता के हिसाब से बनाया गया फ़्लो है. इसमें उपयोगकर्ता अपने Google खाते को जोड़ता है. डीपीसी उपयोगकर्ता को प्रोफ़ाइल का मालिक सेट अप करने का तरीका बताता है.
  • अगर कोई संगठन Google Workspace का इस्तेमाल नहीं करता है, तो हमारा सुझाव है कि आप मैनेज किए जा रहे Google Play खातों वाला तरीका इस्तेमाल करें.

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

सभी Android वर्शन के लिए, प्रावधान करने के मुख्य अंतर

डिप्लॉयमेंट की स्थिति ऑपरेशन का तरीका प्रावधान करने का तरीका 5.0, 5.1 6.0, इसके बाद के वर्शन 7.0 के बाद
कंपनी के मालिकाना हक वाला डिवाइस का मालिक क्यूआर कोड
कारोबार के लिए Google Play खाते
Google खाता
एनएफ़सी
BYOD प्रोफ़ाइल का मालिक कारोबार के लिए Google Play खाते
Google खाता 5.11
मैन्युअल तरीके से DPC इंस्टॉल करना

लागू करने के बारे में ज़रूरी बातें

अपना DPC लिखते समय, इन बातों का ध्यान रखें. इससे कोई फ़र्क़ नहीं पड़ता कि कार्रवाई का कौनसा मोड लागू किया जा रहा है.

Google Play services के साथ काम करने की सुविधा

Google Play services की APK गाइड में, डेवलपर को एपीआई लेन-देन से पहले Google Play services के वर्शन की जांच करने का निर्देश दिया गया है. Google Play services को अपडेट करने की कोशिश करने पर, डिवाइस को सेटअप करने में गंभीर रुकावटें आती हैं. इसलिए, डिवाइस का प्रावधान पूरा होने से पहले, आपके DPC को Google Play services को अपडेट करने की कोशिश नहीं करनी चाहिए.

Google Play services के साथ DPC की सुविधा के बारे में मुख्य बातें:

  • DPC को उन Google Play सेवाओं का इस्तेमाल करके चलाना चाहिए जो किसी खास डिवाइस के साथ भेजी जाती हैं.
  • DPC को Google Play services के आने वाले वर्शन की नई सुविधाओं पर भरोसा नहीं करना चाहिए. डिवाइस प्रॉविज़निंग के दौरान उपलब्ध होने वाली Google Play services की नई सुविधाएं जल्द ही उपलब्ध होंगी.

डिवाइस का प्रावधान पूरा होने पर, DPC उपयोगकर्ता को Google Play services अपडेट करने का प्रॉम्प्ट दे सकता है, ताकि DPC नई सुविधाओं का इस्तेमाल कर सके. हालांकि, अगर किसी वजह से कोई सुविधा उपलब्ध नहीं होती है, तो DPC को उस वर्शन पर सुंदर तरीके से वापस आना चाहिए जो डिवाइस के साथ भेजा गया है.

डिवाइस के विवरण पाएं

प्रक्रिया में देरी की वजह से, नए रजिस्टर किए गए डिवाइस के लिए devices.get पर कॉल करने में दो मिनट लग सकते हैं.

अगर असली उपयोगकर्ता को डिवाइस या वर्क प्रोफ़ाइल का इस्तेमाल करने से पहले, आपके वर्कफ़्लो के लिए जानकारी की ज़रूरत होती है, तो हमारा सुझाव है कि आप DPC में प्रोग्रेस स्क्रीन का इस्तेमाल करें और कॉल पूरा होने तक इंतज़ार करें.

प्रोफ़ाइल मालिक मोड में लागू करने से जुड़ी ज़रूरी बातें

प्रोफ़ाइल के मालिक वाली कार्रवाई का मोड लागू करने के लिए, डीपीसी लिखते समय इन बातों का ध्यान रखें.

निजी DPC को हटाना या बंद करना

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

उपयोगकर्ता निजी DPC हटा देता है

  1. निजी DPC, ACTION_MANAGED_PROFILE_PROVISIONED का जवाब देता है. (Android 5.1 डिवाइसों के लिए, निजी DPC को ACTION_MANAGED_PROFILE_ADDED सुनना चाहिए).
  2. निजी DPC, अनइंस्टॉल करने का अनुरोध करता है ACTION_UNINSTALL_PACKAGE. इससे उपयोगकर्ता को निजी DPC अनइंस्टॉल करने का अनुरोध मिलता है. सबसे अच्छे उपयोगकर्ता अनुभव के लिए, अनइंस्टॉल करने की प्रोसेस, प्रोविज़निंग फ़्लो के दौरान होनी चाहिए.

निजी DPC खुद को बंद कर देता है

  1. निजी DPC, ACTION_MANAGED_PROFILE_PROVISIONED का जवाब देता है. (Android 5.1 डिवाइसों के लिए, निजी DPC को ACTION_MANAGED_PROFILE_ADDED सुनना चाहिए).
  2. अगर लागू हो, तो निजी DPC को खुद को बंद करने से पहले, डिवाइस के एडमिन के खास अधिकारों को रिलीज़ करना चाहिए.
  3. निजी डीपीसी, COMPONENT_ENABLED_STATE_DISABLED पैरामीटर के साथ setApplicationEnabledSetting बंद करने का अनुरोध शुरू करता है.
  4. उपयोगकर्ता, Google Play से निजी DPC को फिर से चालू कर सकता है.

डिवाइस मालिक मोड के लिए लागू करने से जुड़ी ज़रूरी बातें

डिवाइस मालिक मोड चालू करने के लिए, अपना DPC लिखते समय इन बातों का ध्यान रखें.

डिवाइस नया या फ़ैक्ट्री रीसेट किया गया होना चाहिए

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

डिवाइस के मालिक वाले मोड से, DPC को डिवाइस का पूरा कंट्रोल मिलता है. अगर शुरुआती सेटअप की अनुमति देने के बाद, डिवाइस के मालिक वाले मोड को सेट अप करने की अनुमति दी जाती है, तो:

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

सिर्फ़ कंपनी के मालिकाना हक वाले डिवाइसों पर ही डिवाइस मालिक मोड सेट अप करें

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

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

सिस्टम के ऐप्लिकेशन चालू करें

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

Google Play से सिस्टम ऐप्लिकेशन चालू करें

Google Play का इस्तेमाल करके सिस्टम ऐप्लिकेशन चालू करना आसान है. ऐप्लिकेशन के अपडेट उपलब्ध होने पर उपयोगकर्ताओं को उन्हें मिल जाता है.

Android फ़्रेमवर्क एपीआई का इस्तेमाल करके, सिस्टम ऐप्लिकेशन को चालू करें

अगर आपको अपने डिवाइसों का इस्तेमाल शुरू करते ही उपयोगकर्ताओं को सिस्टम ऐप्लिकेशन दिखाना है, तो डिवाइस को सेट अप करने की प्रोसेस के दौरान, सिस्टम ऐप्लिकेशन को चालू करें. DPC, पैकेज के नाम या DevicePolicyManager.enableSystemApp() का इस्तेमाल करके इंटेंट के हिसाब से, सिस्टम ऐप्लिकेशन को चालू करता है.

कुछ ऐसे सिस्टम ऐप्लिकेशन हैं जिन्हें चालू करना है और ईएमएम कंसोल में आईटी एडमिन को दिखाना है.

सिस्टम ऐप्लिकेशन कैटलॉग बनाना

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

  1. अगर डिवाइस पर अभी तक वर्क प्रोफ़ाइल का प्रावधान नहीं किया गया है, तो queryIntentActivities() का इस्तेमाल करके उस डिवाइस पर लॉन्चर आइकॉन वाले सभी ऐप्लिकेशन की सूची खींचें:

    private List<ResolveInfo> getAppsWithLauncher() {
      Intent i = new Intent(Intent.ACTION_MAIN);
      i.addCategory(Intent.CATEGORY_LAUNCHER);
      return getPackageManager().queryIntentActivities(i, 0);
    }
    
  2. अगर डिवाइस पर वर्क प्रोफ़ाइल का प्रावधान पहले से ही किया गया है, तो PackageManager.GET_DISABLED_COMPONENTS और PackageManager.GET_UNINSTALLED_PACKAGES का इस्तेमाल करके वर्क प्रोफ़ाइल के सभी ऐप्लिकेशन की सूची बनाएं.

  3. FLAG_SYSTEM को चुनकर, ऐप्लिकेशन की सूची में सिस्टम ऐप्लिकेशन ढूंढें. इससे पता चलता है कि डिवाइस की सिस्टम इमेज में कोई ऐप्लिकेशन इंस्टॉल है या नहीं.

फ़ायदे:

  • आईटी एडमिन को सभी डिवाइसों पर मौजूद ऐप्लिकेशन की पूरी जानकारी देता है.
  • इस पर पूरा कंट्रोल देती है कि कौनसे ऐप्लिकेशन चालू हैं.

नुकसान:

  • हर डिवाइस का ऐप्लिकेशन कैटलॉग अलग होता है. इसलिए, कई तरह के डिवाइस पर किसी एक नीति के कॉन्फ़िगरेशन वाले मॉडल को लागू करना मुश्किल है.
  • आईटी एडमिन के लिए, OEM के लिए खास ऐप्लिकेशन की संख्या को सही तरीके से पेश करना मुश्किल हो सकता है.

फ़ंक्शन के हिसाब से सिस्टम ऐप्लिकेशन की कैटगरी तय करना

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

फ़ायदे:

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

नुकसान:

  • सिस्टम ऐप्लिकेशन सिर्फ़ उन ही ऐप्लिकेशन को इस्तेमाल करता है जो सभी तरह के डिवाइस पर काम करते हैं.
  • हो सकता है कि आईटी एडमिन किसी ऐप्लिकेशन का एक OEM वर्शन (जैसे कि Samsung® ब्राउज़र) पुश करना चाहें, लेकिन दूसरा नहीं (जैसे कि LG® ब्राउज़र).
  • ऐसा हो सकता है कि आईटी एडमिन कई ऐप्लिकेशन पुश न करना चाहें, लेकिन कई इंटेंट हैंडलर होने पर वे इसे नहीं रोक सकते.

सिर्फ़ मंज़ूर किए गए सिस्टम ऐप्लिकेशन के साथ काम करना

OEM के साथ आप खास OEM पैकेज की पहचान करने के लिए काम करते हैं और ईएमएम कंसोल में सिर्फ़ उन पैकेज के साथ काम करते हैं. इससे OEM ऐप्लिकेशन के लिए, मैनेज किए गए कॉन्फ़िगरेशन को कैटलॉग में भी जोड़ा जा सकता है. इसके अलावा, OEM ऐप्लिकेशन को Google Play पर होस्ट न किए जाने की वजह से, आपको इस बारे में जानकारी नहीं होती.

फ़ायदे:

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

नुकसान:

  • इसकी वजह से उपयोगकर्ताओं की पसंद को कम किया जा सकता है.

अपने DPC के लिए जांच की स्थितियां

टेस्ट DPC एक ओपन सोर्स ऐप्लिकेशन है. इसे Google, आपके DPC ऐप्लिकेशन में एंटरप्राइज़ की सुविधाओं की जांच करने के लिए उपलब्ध कराता है. टेस्ट DPC की सुविधा, github या Google Play पर उपलब्ध है. टेस्ट DPC का इस्तेमाल इन कामों के लिए किया जा सकता है:

  • Android की सुविधाओं को सिम्युलेट करें
  • नीतियां सेट और लागू करें
  • ऐप्लिकेशन और इंटेंट के लिए पाबंदियां सेट करना
  • वर्क प्रोफ़ाइल सेट अप करें
  • पूरी तरह से मैनेज किए गए Android डिवाइसों को सेट अप करना

हालांकि, टेस्ट DPC को खास तौर पर Android के लिए आपके एंटरप्राइज़ सलूशन की जांच करने के लिए बनाया गया है, फिर भी आप इसका इस्तेमाल Android की सुविधाओं के लिए सैंपल कोड के सोर्स के तौर पर भी कर सकते हैं.

प्रावधान को पसंद के मुताबिक बनाएं

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

आपका DPC, DevicePolicyManager.EXTRA_PROVISIONING_MAIN_COLOR और DevicePolicyManager.EXTRA_PROVISIONING_LOGO_URI अतिरिक्त का इस्तेमाल करके, रंग और लोगो के चुनाव करता है.

पसंद के मुताबिक रंग सेट करने के लिए, EXTRA_PROVISIONING_MAIN_COLOR का इस्तेमाल करके एक पूर्णांक सेट करें, जो डिवाइस के प्रावधान के दौरान दिखाए जाने वाले मुख्य रंग को दिखाता है. ACTION_PROVISION_MANAGED_PROFILE या ACTION_PROVISION_MANAGED_DEVICE की मदद से, अतिरिक्त (कॉन्सटेंट) को इंटेंट में रखें.

पूर्णांकों को कैसे दिखाया जाता है, यह देखने के लिए रंग देखें. उदाहरण के लिए, TestDPC ऐप्लिकेशन में MAIN_COLOR देखें.

कस्टम लोगो सेट करने के लिए, डिवाइस को सेट अप करने के दौरान, स्क्रीन पर सबसे ऊपर दिखने वाली इमेज को सेट करने के लिए EXTRA_PROVISIONING_LOGO_URI का इस्तेमाल करें. ACTION_PROVISION_MANAGED_PROFILE या ACTION_PROVISION_MANAGED_DEVICE की मदद से, अतिरिक्त (कॉन्सटेंट) को इंटेंट में रखें. पक्का करें कि इमेज में डिवाइस की पिक्सल सघनता हो.

उदाहरण के लिए, TestDPC ऐप्लिकेशन में LOGO_URI देखें.

क्यूआर कोड का तरीका

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

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

क्यूआर कोड का प्रावधान करने के लिए इस्तेमाल के उदाहरण

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

क्यूआर कोड के प्रावधान के लिए Google डोमेन या Google खाते जैसी Google पहचान की ज़रूरत नहीं होती. जो संगठन Android का इस्तेमाल करते हैं, लेकिन Google Workspace का इस्तेमाल नहीं करते वे Google के पास नहीं होते.

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

क्यूआर कोड बनाएं

क्यूआर कोड प्रावधान के लिए एक मान्य क्यूआर कोड, UTF-8 कोड में बदली गई JavaScript® ऑब्जेक्ट नोटेशन (JSON) स्ट्रिंग है. इन प्रॉपर्टी को मान्य क्यूआर कोड में शामिल किया जा सकता है:

हमेशा ज़रूरी है

अगर डिवाइस पर DPC पहले से इंस्टॉल नहीं है, तो यह ज़रूरी है

डिवाइस का सुझाव तब दिया जाता है, जब वह पहले से वाई-फ़ाई से कनेक्ट न हो

ज़रूरी नहीं

यह सैंपल एक मान्य क्यूआर कोड बनाता है:

{
"android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME":
"com.emm.android/com.emm.android.DeviceAdminReceiver",

"android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM":
"gJD2YwtOiWJHkSMkkIfLRlj-quNqG1fb6v100QmzM9w=",

"android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION":
"https://path.to/dpc.apk",
    "android.app.extra.PROVISIONING_SKIP_ENCRYPTION": false,
    "android.app.extra.PROVISIONING_WIFI_SSID": "GuestNetwork",
    "android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE": {
        "dpc_company_name": "Acme Inc.",
        "emm_server_url": "https://server.emm.biz:8787",
        "another_custom_dpc_key": "dpc_custom_value"
    }
}

क्यूआर कोड प्रॉविज़निंग की प्रोसेस

  1. सेटअप विज़र्ड, उपयोगकर्ता से वेलकम स्क्रीन पर छह बार टैप करने के लिए कहता है. स्क्रीन पर उसी जगह टैप करें.
  2. सेटअप विज़र्ड, उपयोगकर्ता को इंटरनेट से कनेक्ट करने का निर्देश देता है, ताकि सेटअप विज़र्ड, क्यूआर कोड रीडर को डाउनलोड कर सके.
  3. Google Play services एक ऐसा मॉड्यूल डाउनलोड करती है जिसमें क्यूआर कोड पहचानने वाला इंजन होता है.
  4. उपयोगकर्ता, अपने आईटी एडमिन से मिला क्यूआर कोड स्कैन करता है.
  5. सेटअप विज़र्ड आपके DPC ऐप्लिकेशन को डाउनलोड करता है और ACTION_PROVISION_MANAGED_DEVICE का इस्तेमाल करके, डिवाइस के मालिक के प्रावधान की प्रोसेस शुरू करता है.

'कारोबार के लिए Google Play' खातों का तरीका

DPC, डिवाइस मालिक मोड या प्रोफ़ाइल मालिक मोड को सेट अप करने के लिए, 'कारोबार के लिए Google Play खातों' को सेट अप करने के तरीके का इस्तेमाल कर सकता है. प्रावधान करने का यह तरीका उन संगठनों के लिए है जो Google Workspace का इस्तेमाल नहीं कर रहे हैं.

'कारोबार के लिए Google Play खातों' को सेट अप करने का तरीका, DPC सपोर्ट लाइब्रेरी का इस्तेमाल करता है. यह क्लाइंट लाइब्रेरी, मैनेज किए जा रहे Google Play खातों को आसान तरीके से मैनेज करने में मदद करती है. यह, मैनेज किए जा रहे Google Play खातों को सेट अप करने की प्रोसेस में होने वाले आने वाले अपडेट के साथ भी काम करती है.

डिवाइसों को सेट अप करने से जुड़ी ज़रूरी शर्तें

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

प्रोफ़ाइल मालिक मोड को सेट अप करें

किसी ऐसे डिवाइस पर प्रोफ़ाइल के मालिक के तौर पर कार्रवाई करने के मोड का प्रावधान किया जा सकता है जिसका इस्तेमाल 'ऑफ़िस में निजी डिवाइस का इस्तेमाल' सुविधा में निजी डिवाइस के तौर पर किया जा रहा हो.

  1. उपयोगकर्ता, Google Play से आपके DPC को मैन्युअल तरीके से डाउनलोड करता है और उसे लॉन्च करता है.
  2. DPC में, ACTION_PROVISION_MANAGED_PROFILE का इस्तेमाल करके वर्क प्रोफ़ाइल को सेट किया जाता है.
  3. सेटअप के आखिरी चरण पूरे करें.

डिवाइस मालिक मोड सेट अप करें

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

डिवाइस को सेटअप करने के दौरान, जब उपयोगकर्ता कोई खाता जोड़ने के लिए कहा जाता है, तो वह DPC के लिए बना खास टोकन डालता है. टोकन, afw#DPC_IDENTIFIER फ़ॉर्मैट में होता है. एसीएमई नाम के ईएमएम के लिए, afw#acme एसीएमई ईएमएम का डिफ़ॉल्ट डीपीसी इंस्टॉल करेगा. प्रावधान की प्रक्रिया में हर ईएमएम का इस्तेमाल करने से पहले, उसे Google से एक खास DPC आइडेंटिफ़ायर का अनुरोध करना होगा.

  1. उपयोगकर्ता कोई नया या फ़ैक्ट्री रीसेट किया गया डिवाइस चालू करता है और सेटअप विज़र्ड लॉन्च होता है.
  2. जब खाता जोड़ने के लिए कहा जाता है, तो उपयोगकर्ता afw#DPC_IDENTIFIER फ़ॉर्मैट में एक खास टोकन डालता है. यह टोकन आपके ईएमएम के लिए DPC की पहचान करता है.
  3. टोकन में DPC आइडेंटिफ़ायर का इस्तेमाल करके, सेटअप विज़र्ड, डिवाइस में एक अस्थायी Google खाता जोड़ता है. इस अस्थायी खाते का इस्तेमाल सिर्फ़ Google Play से आपके ईएमएम के लिए DPC डाउनलोड करने के लिए किया जाता है. इसे सेटअप के आखिरी चरणों में हटा दिया जाता है.
  4. DPC में, ACTION_PROVISION_MANAGED_DEVICE का इस्तेमाल करके डिवाइस को सेट किया जाता है.
  5. सेटअप के आखिरी चरण पूरे करें.

कार्रवाई के सभी मोड के लिए, सेटअप के आखिरी चरण

प्रोफ़ाइल मालिक मोड या डिवाइस मालिक मोड सेट अप करने के शुरुआती चरणों को पूरा करने के बाद ही यह तरीका अपनाएं.

  1. DPC यह पक्का करता है कि डिवाइस पर, DPC सपोर्ट लाइब्रेरी शुरू करके, मैनेज किए जा रहे Google Play खातों पर काम किया जा सकता हो:

    AndroidForWorkAccountSupport androidForWorkAccountSupport =
      new AndroidForWorkAccountSupport(context, admin);
    androidForWorkAccountSupport.ensureWorkingEnvironment(callback);
    

    अगर किसी डिवाइस पर डिवाइस मालिक मोड सेट अप किया जा रहा है, तो यह चरण उस अस्थायी Google खाते को हटा देता है जिसे DPC डाउनलोड करने के लिए जोड़ा गया था.

  2. उपयोगकर्ता अपने ईएमएम क्रेडेंशियल का इस्तेमाल करके, DPC में साइन इन करता है. आम तौर पर, ये कॉर्पोरेट ईमेल क्रेडेंशियल होते हैं.

  3. DPC, ईएमएम कंसोल से पुष्टि किए गए कॉर्पोरेट उपयोगकर्ता के लिए, मैनेज किए जा रहे Google Play खाते के क्रेडेंशियल का अनुरोध करता है.

  4. अगर ईएमएम कंसोल में उपयोगकर्ता के लिए Google Play userId नहीं है, तो यह Users.insert() को कॉल करके नया उपयोगकर्ता बनाता है. अगर डिवाइस मालिक मोड का प्रावधान किया जा रहा है, तो डिवाइस खाता (खास डिवाइस पर डिप्लॉयमेंट के लिए) या उपयोगकर्ता खाता (कंपनी के मालिकाना हक वाले डिप्लॉयमेंट के लिए) तय करें.

  5. Devices.update पर कॉल करके, डिवाइस की नीति सेट करें. डिवाइस में 'कारोबार के लिए Google Play खाता' जोड़ने से पहले आपको नीति को सेट करना चाहिए. ऐसा न करने पर, डिवाइस में खाता जोड़ने के कुछ समय बाद तक नीति लागू नहीं होगी.

  6. ईएमएम कंसोल, Users.generateAuthenticationToken() को कॉल करके, userId के लिए खाते के क्रेडेंशियल का अनुरोध करता है. पुष्टि करने वाला यह टोकन कुछ समय तक इस्तेमाल किया जा सकता है. इसका इस्तेमाल फिर से नहीं किया जा सकता. प्रोग्राम के हिसाब से खाते को जोड़ने के लिए, DPC को टोकन का इस्तेमाल करना चाहिए (असली उपयोगकर्ता के लिए इसका कोई इस्तेमाल नहीं होगा).

  7. Google Play ईएमएम एपीआई, ईएमएम कंसोल को पुष्टि करने वाला टोकन देता है.

  8. ईएमएम कंसोल, पुष्टि करने वाले टोकन को DPC पर फ़ॉरवर्ड करता है.

  9. DPC, मैनेज किए जा रहे Google Play खाते को डिवाइस में

    androidForWorkAccountSupport.addAndroidForWorkAccount(token,
      accountAddedCallback);
    

Google खाते का तरीका

DPC, डिवाइस मालिक मोड या प्रोफ़ाइल के मालिक वाला मोड सेट अप करने के लिए, Google खाते को सेट करने के तरीके का इस्तेमाल कर सकता है. जब उपयोगकर्ता शुरुआती डिवाइस सेटअप के दौरान अपना Google खाता जोड़ता है, तब Google खाते को सेट अप करने के तरीके के ज़रिए डीपीसी, उपयोगकर्ता को प्रावधान के चरणों के बारे में बताता है.

जब कोई उपयोगकर्ता अपने Google खाते के क्रेडेंशियल डालता है:

  • Google ऑथेंटिकेशन सर्वर, उपयोगकर्ता खाते की पुष्टि करता है.
  • इसके बाद, ऑथेंटिकेशन सर्वर एंटरप्राइज़ सर्वर से संपर्क करता है और देखता है कि खाते का डोमेन, Google Workspace डोमेन के तौर पर रजिस्टर किया गया है या ईएमएम से मैनेज किया जा रहा डोमेन.
  • अगर ऐसा है, तो सिस्टम Google Play से डोमेन से जुड़े DPC को अपने-आप डाउनलोड करके, उसे इंस्टॉल करता है.

प्रोफ़ाइल मालिक मोड को सेट अप करें

किसी डिवाइस के शुरुआती सेट अप के दौरान या उपयोगकर्ता के कोई खाता जोड़ते समय, प्रोफ़ाइल के मालिक वाले मोड की कार्रवाई को जोड़ा जा सकता है. इसके लिए, सेटिंग > खाता जोड़ें पर जाएं.

  1. उपयोगकर्ता ने सेटअप विज़र्ड में या सेटिंग > खाता जोड़ें की मदद से खाते की पुष्टि की है.
  2. GMSCore, ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE का इस्तेमाल करके वर्क प्रोफ़ाइल के प्रावधान की प्रोसेस शुरू करता है.
  3. DPC, डिवाइस पर अपने-आप डाउनलोड हो जाता है और ACTION_GET_PROVISIONING_MODE हैंडलर का इस्तेमाल करके लॉन्च किया जाता है. ऐसा इसलिए किया जाता है, ताकि यह पुष्टि की जा सके कि वर्क प्रोफ़ाइल का प्रावधान DPC पर काम करता है.
    • EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE वर्क प्रोफ़ाइल के लिए अतिरिक्त जानकारी, जैसे कि ईमेल पता. DPC को यहां इस बंडल के हिस्से के रूप में is_setup_wizard यहां भी मिलेगा. यह बंडल ACTION_GET_PROVISIONING_MODE और ACTION_ADMIN_POLICY_COMPLIANCE हैंडलर में शामिल किया जाएगा.
    • EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE नई वर्क प्रोफ़ाइल में माइग्रेट किए जाने वाले पुष्टि किए गए खाते का नाम.
  4. इस प्लैटफ़ॉर्म पर वर्क प्रोफ़ाइल का प्रावधान किया जाता है.
  5. वर्क प्रोफ़ाइल का प्रावधान होने पर, DPC को ब्रॉडकास्ट ACTION_PROFILE_PROVISIONING_COMPLETE मिलता है. DPC का ACTION_ADMIN_POLICY_COMPLIANCE हैंडलर वर्क प्रोफ़ाइल में लॉन्च किया गया है. वर्क प्रोफ़ाइल बन जाने के बाद, DPC, वर्क प्रोफ़ाइल में भी चलने लगता है. DPC, मैनेज किए जा रहे उस Google खाते के लिए नीतियां लागू करता है. साथ ही, यह पक्का करता है कि डिवाइस किसी छेड़छाड़ वाली स्थिति में न हो. साथ ही, डीपीसी इस बात की भी पुष्टि करता है कि नीतियां लागू हुई हैं या नहीं (जैसे कि पासवर्ड ज़रूरी करना).
  6. निजी प्रोफ़ाइल में मौजूद DPC, खुद को बंद कर देता है या उपयोगकर्ता उसे हटा देता है.

डिवाइस मालिक मोड या COPE सेट अप करें

नए डिवाइस के शुरुआती सेटअप के दौरान या फ़ैक्ट्री रीसेट करने के बाद, आपको डिवाइस मालिक मोड की कार्रवाई करनी होगी. किसी डिवाइस में डिवाइस के मालिक मोड को किसी समय नहीं जोड़ा जा सकता.

  1. सेटअप विज़र्ड से किसी उपयोगकर्ता ने खाते की पुष्टि करने की प्रोसेस शुरू की है.
  2. GMSCore, ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE का इस्तेमाल करके डिवाइस के मालिक के लिए प्रावधान शुरू करता है. 3.DPC डिवाइस पर अपने-आप डाउनलोड हो जाता है और मनमुताबिक प्रॉविज़निंग मोड चुनने के लिए, GET_PROVISIONING_MODE हैंडलर का इस्तेमाल करके इसे लॉन्च किया जाता है.
    • EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE वर्क प्रोफ़ाइल के लिए अतिरिक्त जानकारी, जैसे कि स्थान-भाषा, वाई-फ़ाई, और ईमेल पता. DPC को यहां इस बंडल के हिस्से के रूप में is_setup_wizard यहां भी मिलेगा. यह बंडल ACTION_GET_PROVISIONING_MODE और ACTION_ADMIN_POLICY_COMPLIANCE हैंडलर में शामिल किया जाएगा.
  3. प्लैटफ़ॉर्म, डिवाइस को मनमुताबिक प्रॉविज़निंग मोड में सेट करता है.
  4. डिवाइस का प्रावधान होने पर, DPC को ये ब्रॉडकास्ट मिलते हैं और DPC का ACTION_ADMIN_POLICY_COMPLIANCE हैंडलर लॉन्च होता है:
  5. DPC, Global.DEVICE_PROVISIONED वैल्यू का इस्तेमाल करके इस बात की पुष्टि करता है कि डिवाइस नया है या फ़ैक्ट्री रीसेट किया गया है (उपलब्ध नहीं है):
    • 0 प्रावधान नहीं किया गया है.
    • 1 प्रावधान किया गया है.
  6. DPC, मैनेज किए जा रहे डिवाइस के लिए नीतियों का इस्तेमाल करके प्रावधान करने की प्रोसेस पूरी करता है. इसमें यह भी पक्का किया जाता है कि डिवाइस किसी छेड़छाड़ की स्थिति में न हो. इसके बाद, यह पुष्टि की जाती है कि नीतियां लागू हुई हैं या नहीं, जैसे कि पासवर्ड डालना.

Google खाता इस्तेमाल करने के तरीके को लागू करने के लिए ज़रूरी बातें

  • DPC को, इस्तेमाल किए गए लॉन्च इंटेंट में कुछ और खास चीज़ों को खोजकर, Google खाते की पुष्टि करने वाले फ़्लो का पता लगाना चाहिए (LaunchIntentUtil देखें):

    • android.accounts.Account टाइप का खाता इससे पता चलता है कि खाते को सेटअप विज़र्ड से या सेटिंग > खाता जोड़ें से जोड़ा गया था. इसके लिए, डिवाइस या प्रोफ़ाइल को मैनेज करने के लिए लॉन्च किए गए DPC की ज़रूरत होती है.
    • is_setup_wizard टाइप का बूलियन सही होने पर, DPC को सेटअप विज़र्ड पूरा होने से पहले ही सेटअप विज़र्ड में लॉन्च किया गया था. इसके अलावा, सेटिंग > खाता जोड़ें या किसी दूसरे फ़्लो से भी ऐसा किया जा सकता है.

    DPC को Google खाते के तरीके के तौर पर लॉन्च किया गया है या नहीं, इसकी जांच करने का तरीका है:

    boolean isSynchronousAuthLaunch(Intent launchIntent) {
      return launchIntent.hasExtra("is_setup_wizard");
    }
    
  • सेटअप पूरा होने से पहले, DPC को finish() को कॉल नहीं करना चाहिए. इससे पॉज़िटिव नतीजे का कोड (जैसे कि RESULT_OK) भी दिखना चाहिए, क्योंकि डीपीसी को startActivityForResult() के साथ लॉन्च किया गया है और नतीजे का इंतज़ार किया जाता है.

    अगर DPC सेटअप फ़्लो, ACTION_PROVISION_* इंटेंट भेजने के पॉइंट तक पहुंच जाता है, तो finish() को कॉल करने से पहले, DPC को प्रॉविज़निंग प्रोसेस से मिलने वाले नतीजे का इंतज़ार करना चाहिए. ACTION_PROVISION_* इंटेंट लॉन्च करते समय, startActivityForResult() और onActivityResult() कॉलबैक का इस्तेमाल करें. (उदाहरण के लिए, LaunchActivity और SetupSyncAuthManagement देखें).

    सेटअप प्रोसेस की संभावित एसिंक्रोनस प्रकृति की वजह से, DPC यह बताने के लिए RESULT_OK के नतीजे कोड पर भरोसा नहीं कर सकता कि प्रावधान सफल रहा. इस बात की गारंटी है कि प्रावधान की प्रोसेस पूरी होने के लिए, DeviceAdminReceiver कॉलबैक पर भरोसा किया जाएगा. RESULT_CANCELED बताता है कि उपयोगकर्ता ने सेटअप फ़्लो के सिंक्रोनस हिस्से में बैक आउट किया है और DPC को इस पर प्रतिक्रिया देनी चाहिए.

    इस उदाहरण में, DPC ने प्रॉविज़निंग लॉन्च की और किसी गतिविधि से नतीजे के कोड का इंतज़ार किया:

    Intent intent = new Intent(ACTION_PROVISION_MANAGED_PROFILE);
    startActivityForResult(intent, REQUEST_MANAGED_PROFILE);
    ...
    
    @Override
    public void onActivityResult(int req, int res, Intent i) {
        if (req == REQUEST_MANAGED_PROFILE) {
            if (res == Activity.RESULT_OK) {
                setResult(Activity.RESULT_OK);
                finish();
            } else {
                Toast.makeText(this, “Provisioning failed”,
                        Toast.LENGTH_SHORT).show();
            }
        }
    }
    
  • अगर डिवाइस को पहले से प्रावधान किया गया है, तो DPC को डिवाइस के मालिक वाले मोड को सेट अप करने की कोशिश नहीं करनी चाहिए (ProvisioningStateUtil.isDeviceProvisioned() देखें). इस उदाहरण में, DPC जांच करता है कि डिवाइस को सेट अप किया गया है या नहीं:

    public static boolean isDeviceProvisioned(Context context) {
    ContentResolver cr = context.getContentResolver();
        return
    Settings.Global.getInt(cr, DEVICE_PROVISIONED, 0) != 0;
    }
    
  • ज़रूरी नहीं. DPC, स्थिति की जानकारी को वापस अपनी DeviceAdminReceiver में भेजने के लिए, प्रॉविज़निंग लॉन्च करते समय EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE अतिरिक्त सुविधा का इस्तेमाल कर सकता है (जो प्रोफ़ाइल के मालिक वाले केस में वर्क प्रोफ़ाइल में चल रहा है). TestDPC इस अतिरिक्त प्रोसेस का इस्तेमाल प्रावधान पूरा होने के बाद, Google खाते के फ़्लो में गतिविधियों का एक अलग सेट डालने के लिए करता है. ज़्यादा जानकारी के लिए, DeviceAdminReceiver देखें.

    public class DeviceAdminReceiver extends android.app.admin.DeviceAdminReceiver
    {
      @Override
      public void onProfileProvisioningComplete(Context context, Intent intent) {
        // Retrieve the admin extras bundle, which we can use to determine the original context for
        // Test DPC's launch.
        PersistableBundle extras = intent.getParcelableExtra(
                EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE);
        ...
    
  • वर्क प्रोफ़ाइल सेट अप करने के लिए, DPC को जोड़े गए खाते को नई वर्क प्रोफ़ाइल पर माइग्रेट करना होगा. ऐसा करने के लिए, DPC को ACTION_PROVISION_MANAGED_PROFILE के लिए लॉन्च इंटेंट में दिए गए खाते को पास करना चाहिए.

  • सेटअप पूरा होने के बाद, ऐप्लिकेशन से बाहर निकलने के लिए DPC को उपयोगकर्ता को एक साफ़ कॉल-टू-ऐक्शन (जैसे कि'खत्म करें' बटन) देना चाहिए, ताकि उपयोगकर्ता को यह न लगे कि वह फ़्लो खत्म हो गया है.

  • DPC को सेटअप विज़र्ड थीम या लेआउट लाइब्रेरी का इस्तेमाल करना चाहिए, ताकि उपयोगकर्ता अनुभव को बेहतर बनाया जा सके और वह भी बेहतर तरीके से इंटिग्रेट हो.

एनएफ़सी वाला तरीका

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

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

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

एनएफ़सी प्रोग्रामर ऐप्लिकेशन और प्रोग्रामर डिवाइस बनाएं

Android 10 या उससे पहले के वर्शन का इस्तेमाल करने वाले डिवाइसों में, एनएफ़सी के प्रावधान को पूरा करने के लिए Android बीम का इस्तेमाल किया जा सकता है:

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

ग्राहक के डिवाइस का प्रावधान करें

  1. प्रोग्रामर डिवाइस या एनएफ़सी टैग को किसी नए डिवाइस या फ़ैक्ट्री रीसेट किए गए डिवाइस से जोड़ें.
  2. पुष्टि करें कि डिवाइस, शुरू होने के समय दिखने वाली वेलकम स्क्रीन पर ही दिख रहा हो. प्रोग्रामर ऐप्लिकेशन के Ready to send:{...} में टेक्स्ट के बारे में बताया जाता है.
  3. तब तक इंतज़ार करें, जब तक DPC उपलब्ध न हो:
    1. डिवाइस एन्क्रिप्ट (सुरक्षित) करता है.
    2. अगर यह कोड-डिवीज़न मल्टिपल ऐक्सेस (सीडीएमए) डिवाइस है, तो: यह सुविधा टेलीफ़ोनी यूज़र इंटरफ़ेस दिखने के दौरान फ़ोन को चालू करती है. इसके लिए, इंटरैक्शन की ज़रूरत नहीं होती.
    3. वाई-फ़ाई कनेक्शन सेट अप करता है.
    4. com.example.android.apis के लिए APK फ़ाइल डाउनलोड करता है.
    5. com.example.android.apis इंस्टॉल करता है.
    6. com.example.android.apis में सैंपल डिवाइस एडमिन को डिवाइस मालिक के तौर पर सेट करता है.
    7. डिवाइस मालिक के चालू होने पर सफल "टोस्ट" दिखाता है.
  4. होम पेज पर वापस आने के बाद (सेटअप विज़र्ड अपने-आप स्किप हो जाता है), देखें कि com.example.android.apis को डिवाइस के मालिक के तौर पर सेट किया गया है या नहीं:
    1. सेटिंग > सुरक्षा > डिवाइस के एडमिन में जाकर, पक्का करें कि सैंपल डिवाइस के एडमिन को हटाया नहीं जा सकता.
    2. सेटिंग > उपयोगकर्ता > उपयोगकर्ता और प्रोफ़ाइल > आप (मालिक) में जाकर, पक्का करें कि सिर्फ़ मालिक वाला खाता उपलब्ध हो (किसी डिवाइस पर एक समय पर सिर्फ़ एक सक्रिय डिवाइस मालिक हो सकता है).

अन्य संसाधन

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

मैन्युअल DPC इंस्टॉल करने का तरीका

मैन्युअल तरीके से डीपीसी इंस्टॉल करने के तरीके का इस्तेमाल करके, प्रोफ़ाइल के मालिक वाला मोड सेट अप करने के लिए, उपयोगकर्ता Google Play से आपका डीपीसी डाउनलोड करके उसे इंस्टॉल करता है. इसके बाद DPC, बाकी प्रक्रिया में उपयोगकर्ता को यह गाइड करता है कि वह मैनेज किए जा रहे Google खाते के लिए, प्रोफ़ाइल का मालिक सेट अप कर सकता है.

DPC, वर्क प्रोफ़ाइल बनाने से पहले या उसके बाद, मैनेज किया जा रहा Google खाता जोड़ सकता है. उदाहरण के लिए, DPC पहले मैनेज किए जा रहे Google खाते के लिए अनुरोध करने के बजाय, उपयोगकर्ता के ईएमएम क्रेडेंशियल के आधार पर वर्क प्रोफ़ाइल बना सकता है.

प्रोफ़ाइल मालिक मोड को सेट अप करें

सबसे पहले, मैनेज किया जा रहा Google खाता जोड़ें

  1. उपयोगकर्ता, Google Play से आपका DPC डाउनलोड करके उसे इंस्टॉल करता है.
  2. DPC, AccountManager.addAccount() का इस्तेमाल करके वर्क प्रोफ़ाइल बनाने से पहले, मैनेज किए जा रहे Google खाते को जोड़ता है.
  3. DPC, निजी प्रोफ़ाइल में चलता है और वर्क प्रोफ़ाइल बनाने की प्रोसेस शुरू करता है. इसके लिए, इनका इस्तेमाल किया जाता है:
    • ACTION_PROVISION_MANAGED_PROFILE वर्क प्रोफ़ाइल का प्रावधान किया गया है.
    • EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE वर्क प्रोफ़ाइल के लिए अतिरिक्त जानकारी, जैसे कि स्थान-भाषा, वाई-फ़ाई, और ईमेल पता.
    • EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE नई वर्क प्रोफ़ाइल में माइग्रेट किए जाने वाले पुष्टि किए गए खाते का नाम.
  4. वर्क प्रोफ़ाइल में मौजूद DPC, प्रावधान की प्रोसेस को पूरा करता है. वर्क प्रोफ़ाइल बन जाने के बाद, DPC, वर्क प्रोफ़ाइल में भी चलने लगता है. वर्क प्रोफ़ाइल में मौजूद DPC, मैनेज किए जा रहे Google खाते के लिए नीतियों को पुश करके, प्रावधान की प्रोसेस पूरी करता है. साथ ही, यह पक्का करता है कि डिवाइस किसी भी तरह से छेड़छाड़ वाली स्थिति में न हो. इसके अलावा, इस बात की भी पुष्टि की जाती है कि नीतियां लागू की गई हैं या नहीं (जैसे, पासवर्ड ज़रूरी है).
  5. वर्क प्रोफ़ाइल का प्रावधान होने पर, DPC को ब्रॉडकास्ट ACTION_PROFILE_PROVISIONING_COMPLETE मिलता है.
  6. निजी प्रोफ़ाइल में मौजूद DPC, खुद को बंद कर देता है या उपयोगकर्ता उसे हटा देता है.

सबसे पहले वर्क प्रोफ़ाइल बनाएं

  1. उपयोगकर्ता, Google Play से आपका DPC डाउनलोड करके उसे इंस्टॉल करता है.
  2. DPC, निजी प्रोफ़ाइल में चलता है और वर्क प्रोफ़ाइल बनाने की प्रोसेस शुरू करता है. इसके लिए, इनका इस्तेमाल किया जाता है:
    • ACTION_PROVISION_MANAGED_PROFILE वर्क प्रोफ़ाइल का प्रावधान किया गया है.
    • EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE वर्क प्रोफ़ाइल के लिए अतिरिक्त जानकारी, जैसे कि स्थान-भाषा, वाई-फ़ाई, और ईमेल पता.
  3. DPC, AccountManager.addAccount() का इस्तेमाल करके मैनेज किए जा रहे Google खाते को जोड़ता है.
  4. DPC को ब्रॉडकास्ट मिलता है ACTION_PROFILE_PROVISIONING_COMPLETE और यह पढ़ता है EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE.
  5. वर्क प्रोफ़ाइल में मौजूद DPC, प्रावधान की प्रोसेस को पूरा करता है. वर्क प्रोफ़ाइल बन जाने के बाद, DPC, वर्क प्रोफ़ाइल में भी चलने लगता है. वर्क प्रोफ़ाइल में मौजूद DPC, मैनेज किए जा रहे उस Google खाते के लिए नीतियों को पुश करके, प्रावधान की प्रोसेस पूरी करता है. साथ ही, यह पक्का करता है कि डिवाइस किसी भी तरह से छेड़छाड़ वाली स्थिति में न हो. साथ ही, यह पुष्टि की जाती है कि नीतियां लागू हुई हैं या नहीं (जैसे कि पासवर्ड ज़रूरी करना).
  6. DPC, DevicePolicyManager.setProfileEnabled() का इस्तेमाल करके वर्क प्रोफ़ाइल चालू करता है.
  7. निजी प्रोफ़ाइल में मौजूद DPC, खुद को बंद कर देता है या उपयोगकर्ता उसे हटा देता है.

  1. Android 5.1 में Google खाता तरीके से कार्रवाई करने के लिए, सिर्फ़ प्रोफ़ाइल के मालिक वाले मोड का इस्तेमाल किया जा सकता है. साथ ही, उपयोगकर्ता इसे सिर्फ़ सेटिंग > खाता जोड़ें से कॉन्फ़िगर कर सकता है.