डिवाइस नीति कंट्रोलर बनाएं

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

DPC के बारे में जानकारी

Android एंटरप्राइज़ डिप्लॉयमेंट में, एक एंटरप्राइज़ इन चीज़ों पर कंट्रोल रखता है उपयोगकर्ता के डिवाइसों पर अलग-अलग तरह की सुविधाएं इस्तेमाल की जा सकती हैं. जैसे, काम से जुड़ी अलग-अलग सुविधाएं इस्तेमाल करना उपयोगकर्ताओं की गतिविधि निजी डेटा, या डिवाइस की क्षमताओं (जैसे कि कैमरा) को बंद करने के लिए किया जा सकता है.

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

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

इस गाइड में ऐसा DPC डेवलप करने का तरीका बताया गया है जिससे वर्क प्रोफ़ाइल बनाई और मैनेज की जा सकती हैं.

ईएमएम के लिए DPC सपोर्ट लाइब्रेरी

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

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

लाइब्रेरी डाउनलोड करने के लिए, नीचे दिया गया तरीका अपनाएं. इस गाइड में बताए गए टास्क DPC सपोर्ट लाइब्रेरी के इस्तेमाल की कल्पना कर सकते हैं.

DPC सपोर्ट लाइब्रेरी डाउनलोड करें

DPC सहायता लाइब्रेरी का इस्तेमाल करने के लिए, Android Enterprise ईएमएम प्रोवाइडर समुदाय से लाइब्रेरी डाउनलोड करें. आपको अपनी build.gradle फ़ाइल में लाइब्रेरी जोड़ना होगा और अन्य डिपेंडेंसी तब बनानी चाहिए, जब DPC ऐप्लिकेशन बनाया जाए. उदाहरण के लिए, लाइब्रेरी के लिए 11.4.0 की ज़रूरत है Google Play Services की पुष्टि करने वाली क्लाइंट लाइब्रेरी.

  1. build.gradle फ़ाइल में लाइब्रेरी जोड़ें:
    ग्रूवीKotlin
    implementation(name:'dpcsupport-yyyymmdd', ext:'aar')
    
    implementation(name = "dpcsupport-yyyymmdd", ext = "aar")
    
  2. 11.4.0 जोड़ें Google Play services की अनुमति वाली क्लाइंट लाइब्रेरी को create.gradle फ़ाइल में:
    ग्रूवीKotlin
    implementation 'com.google.android.gms:play-services-auth:11.4.0'
    
    implementation("com.google.android.gms:play-services-auth:11.4.0")
    

लाइब्रेरी को चलाने के लिए कुछ अनुमतियों की ज़रूरत होती है, इसलिए आपको इन्हें Google Play पर अपलोड करने पर, DPC ऐप्लिकेशन का मेनिफ़ेस्ट:

  <uses-permission android:name=
      "android.permission.DOWNLOAD_WITHOUT_NOTIFICATION"/>
  <uses-permission android:name=
      "android.permission.GET_ACCOUNTS"/>
  <uses-permission android:name=
      "android.permission.MANAGE_ACCOUNTS"/>
  <uses-permission android:name=
      "android.permission.WRITE_SYNC_SETTINGS"/>
  <uses-permission android:name=
      "com.google.android.providers.gsf.permission.READ_GSERVICES"/>

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

DPC बनाएं

अपना DPC, डिवाइस एडमिन ऐप्लिकेशन के लिए इस्तेमाल किए जाने वाले मौजूदा मॉडल के हिसाब से बनाएं. खास तौर पर, आपके ऐप्लिकेशन को DeviceAdminReceiver (android.app.admin की क्लास) को सब-क्लास करना होगा पैकेज) में बताए गए अनुसार डिवाइस एडमिन.

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

मूल वर्क प्रोफ़ाइल बनाने का तरीका दिखाने वाले नमूने के लिए, यह देखें GitHub पर BasicManagedProfile करें.

पहले से निजी प्रोफ़ाइल वाले डिवाइस पर वर्क प्रोफ़ाइल बनाने के लिए, सबसे पहले यह देखें कि डिवाइस, वर्क प्रोफ़ाइल की सुविधा देता है या नहीं. इसके लिए, की मौजूदगी FEATURE_MANAGED_USERS सिस्टम की सुविधा:

KotlinJava
if (!packageManager.hasSystemFeature(PackageManager.FEATURE_MANAGED_USERS)) {
    // This device does not support work profiles!
}
PackageManager pm = getPackageManager();
if (!pm.hasSystemFeature(PackageManager.FEATURE_MANAGED_USERS)) {
    // This device does not support work profiles!
}

अगर डिवाइस पर वर्क प्रोफ़ाइल काम करती हैं, तो इंटेंट भेजकर वर्क प्रोफ़ाइल बनाएं ACTION_PROVISION_MANAGED_PROFILE के साथ कार्रवाई. (कुछ दस्तावेज़ों में, मैनेज की जा रही प्रोफ़ाइल सामान्य शब्द जिसका मतलब वर्क प्रोफ़ाइल से मिलता-जुलता है के मामले में Android के लिए इस्तेमाल किया जा सकता है.) डिवाइस के एडमिन पैकेज का नाम शामिल करें अतिरिक्त के तौर पर:

KotlinJava
val provisioningActivity = getActivity()

// You'll need the package name for the DPC app.
val myDPCPackageName = "com.example.myDPCApp"

// Set up the provisioning intent
val adminComponent = ComponentName(provisioningActivity.applicationContext, MyAdminReceiver::class.java)
provisioningIntent.putExtra(EXTRA_PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME, adminComponent.flattenToString())
if (provisioningIntent.resolveActivity(provisioningActivity.packageManager) == null) {
    // No handler for intent! Can't provision this device.
    // Show an error message and cancel.
} else {
    // REQUEST_PROVISION_MANAGED_PROFILE is defined
    // to be a suitable request code
    startActivityForResult(provisioningIntent,
            REQUEST_PROVISION_MANAGED_PROFILE)
    provisioningActivity.finish()
}
Activity provisioningActivity = getActivity();
// You'll need the package name for the DPC app.
String myDPCPackageName = "com.example.myDPCApp";
// Set up the provisioning intent
Intent provisioningIntent =
        new Intent("android.app.action.PROVISION_MANAGED_PROFILE");
ComponentName adminComponent = new ComponentName(provisioningActivity.getApplicationContext(), MyAdminReceiver.class);
provisioningIntent.putExtra(EXTRA_PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME, adminComponent.flattenToString());
if (provisioningIntent.resolveActivity(provisioningActivity.getPackageManager())
         == null) {
    // No handler for intent! Can't provision this device.
    // Show an error message and cancel.
} else {
    // REQUEST_PROVISION_MANAGED_PROFILE is defined
    // to be a suitable request code
    startActivityForResult(provisioningIntent,
            REQUEST_PROVISION_MANAGED_PROFILE);
    provisioningActivity.finish();
}

सिस्टम इस इंटेंट के हिसाब से जवाब देता है. इसके लिए ये तरीके अपनाए जाते हैं:

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

onActivityResult() को इससे बदलें देखें कि प्रावधान पूरा हुआ या नहीं:

KotlinJava
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent) {
    // Check if this is the result of the provisioning activity
    if (requestCode == REQUEST_PROVISION_MANAGED_PROFILE) {
        // If provisioning was successful, the result code is
        // Activity.RESULT_OK
        if (resultCode == Activity.RESULT_OK) {
            // Work profile created and provisioned.
        } else {
            // Provisioning failed.
        }
        return
    } else {
        // This is the result of some other activity. Call the superclass.
        super.onActivityResult(requestCode, resultCode, data)
    }
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    // Check if this is the result of the provisioning activity
    if (requestCode == REQUEST_PROVISION_MANAGED_PROFILE) {
        // If provisioning was successful, the result code is
        // Activity.RESULT_OK
        if (resultCode == Activity.RESULT_OK) {
            // Work profile created and provisioned.
        } else {
            // Provisioning failed.
        }
        return;
    } else {
        // This is the result of some other activity. Call the superclass.
        super.onActivityResult(requestCode, resultCode, data);
    }
}

वर्क प्रोफ़ाइल को चालू करने की प्रक्रिया पूरी करें

प्रोफ़ाइल का प्रावधान हो जाने पर, सिस्टम DPC को कॉल करता है ऐप्लिकेशन का DeviceAdminReceiver.onProfileProvisioningComplete() तरीका. सेटिंग में एडमिन के किए गए बदलाव वर्क प्रोफ़ाइल को चालू करने की प्रोसेस को पूरा करने के लिए, इस कॉलबैक तरीके का इस्तेमाल करें.

सामान्य DeviceAdminReceiver.onProfileProvisioningComplete() कॉलबैक लागू करने के ये फ़ायदे होते हैं:

वर्क प्रोफ़ाइल चालू करें

ये टास्क पूरे करने के बाद, डिवाइस नीति मैनेजर के वर्क प्रोफ़ाइल चालू करने का setProfileEnabled() तरीका:

KotlinJava
// Get the device policy manager
val myDevicePolicyMgr = getSystemService(Context.DEVICE_POLICY_SERVICE) as DevicePolicyManager
val componentName = myDeviceAdminReceiver.getComponentName(this)
// Set the name for the newly created work profile.
myDevicePolicyMgr.setProfileName(componentName, "My New Work Profile")
// ...and enable the profile
myDevicePolicyMgr.setProfileEnabled(componentName)
// Get the device policy manager
DevicePolicyManager myDevicePolicyMgr =
        (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
ComponentName componentName = myDeviceAdminReceiver.getComponentName(this);
// Set the name for the newly created work profile.
myDevicePolicyMgr.setProfileName(componentName, "My New Work Profile");
// ...and enable the profile
myDevicePolicyMgr.setProfileEnabled(componentName);

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

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

डिवाइस नीतियां लागू करने के बारे में जानकारी के लिए, यहां देखें नीतियां.

मैनेज किए जा रहे कॉन्फ़िगरेशन लागू करें वर्क ऐप्लिकेशन पर

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

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

अपने ग्राहक एडमिन को दिखाने के लिए, आपको ऐप्लिकेशन से यह स्कीमा मिलता है अपने ईएमएम कंसोल में, ऐसा यूज़र इंटरफ़ेस (यूआई) दें जिसमें स्कीमा डिसप्ले करता है और एडमिन को ऐप्लिकेशन की सेटिंग पहले से कॉन्फ़िगर करने की अनुमति देता है. इस तरह, मैनेज किया जा रहा जो कॉन्फ़िगरेशन एडमिन सेट करता है वह आम तौर पर को ईएमएम सर्वर पर सेव करता है, जो इसके बाद सेट करने के लिए EMM API चलाएं डिवाइस के लिए मैनेज किए जा रहे कॉन्फ़िगरेशन या Managed कॉन्फ़िगरेशनsforuser का इस्तेमाल करें. यहां जाएं: मैनेज किए जा रहे कॉन्फ़िगरेशन Play पर देखी जा सकती है.

मैनेज किए जा रहे कॉन्फ़िगरेशन, Play के ईएमएम एपीआई का इस्तेमाल करके ऐप्लिकेशन पर लागू किए जा सकते हैं (सुझाया गया तरीका) या सीधे DPC से (मैनेज किए जा रहे कॉन्फ़िगरेशन लागू करना) में बताया गया DPC से सीधे तौर पर संपर्क करें). Play का EMM API इस्तेमाल करना के कई फ़ायदे हैं, जिनमें इसे आसान तरीके से लागू करना भी शामिल है, क्योंकि आप DPC सपोर्ट लाइब्रेरी की मदद से DPC टास्क को आसान बनाया जा सकता है. इसके अलावा, Play का ईएमएम एपीआई:

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

मैनेज किए जा रहे कॉन्फ़िगरेशन लागू करने के लिए, ईएमएम एपीआई चलाएं

मैनेज किए जा रहे कॉन्फ़िगरेशन के लिए Play EMM API का इस्तेमाल करने के लिए, DPC को Google Play से कॉन्फ़िगरेशन सेट करने के लिए. DPC सपोर्ट लाइब्रेरी इस बात का ध्यान रखती है आपके लिए Google Play से भेजे गए कॉन्फ़िगरेशन को प्रॉक्सी करके आपके लिए टास्क बनाया जा सकता है.

Play का इस्तेमाल करने के लिए EMM API का इस्तेमाल करने के लिए, DPC सहायता लाइब्रेरी डाउनलोड करें और फिर अपने DPC में प्रबंधित कॉन्फ़िगरेशन सहायता को सक्षम करें.

इसमें, मैनेज किए गए कॉन्फ़िगरेशन की सुविधा चालू करें आपका DPC

इस कक्षा को अपने DPC में इंपोर्ट करें:

com.google.android.apps.work.dpcsupport.ManagedConfigurationsSupport

मैनेज की जा रही कॉन्फ़िगरेशन लाइब्रेरी शुरू करें. इस उदाहरण में, "एडमिन" इससे मेल खाता है DeviceAdminReceiver का componentName शामिल है.

KotlinJava
var managedConfigurationsSupport = ManagedConfigurationsSupport(context, admin)
ManagedConfigurationsSupport managedConfigurationsSupport =
    new ManagedConfigurationsSupport(context, admin);

मैनेज किए जा रहे कॉन्फ़िगरेशन चालू करें:

KotlinJava
managedConfigurationsSupport.enableManagedConfigurations()
managedConfigurationsSupport.enableManagedConfigurations();

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

मैनेज किए जा रहे कॉन्फ़िगरेशन लागू करें DPC से सीधे संपर्क करें.

सीधे DPC से किसी ऐप्लिकेशन की कॉन्फ़िगरेशन सेटिंग बदलने के लिए, DevicePolicyManager.setApplicationRestrictions() का तरीका और पास के पैरामीटर DeviceAdminReceiver, टारगेट ऐप्लिकेशन का पैकेज नाम, और बंडल में ऐप्लिकेशन का मैनेज किया जा रहा कॉन्फ़िगरेशन, जैसा एडमिन ने सेट किया है. यहां जाएं: कैसे करें DPC और EMM कंसोल, जानकारी के लिए और मैनेज किए जा रहे कॉन्फ़िगरेशन को सेट अप करते हैं. हालांकि, ध्यान दें कि यह वैकल्पिक तरीका लागू करने के लिए 'कारोबार के लिए Google Play खातों' के डिप्लॉयमेंट में कॉन्फ़िगरेशन का सुझाव नहीं दिया जाता.

कारोबार के लिए Google Play खाते का प्रावधान करना सहायता

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

'कारोबार के लिए Google Play खाते' शुरू करें DPC में सहायता पाएं

इस कक्षा को अपने DPC में इंपोर्ट करें:

com.google.android.apps.work.dpcsupport.AndroidForWorkAccountSupport

प्रावधान के साथ काम करने वाली लाइब्रेरी को शुरू करें. इस उदाहरण में, “एडमिन” DeviceAdminReceiver के ComponentName.

KotlinJava
var androidForWorkAccountSupport = AndroidForWorkAccountSupport(context, admin)
AndroidForWorkAccountSupport androidForWorkAccountSupport =
    new AndroidForWorkAccountSupport(context, admin);

यह पक्का करें कि मैनेज किए जा रहे Google Play खाते

DPC सेट अप होने के बाद, डिवाइस को प्रोफ़ाइल मालिक मोड (ACTION_PROVISION_MANAGED_PROFILE) या डिवाइस में रखा जाएगा मालिक मोड (ACTION_PROVISION_MANAGED_DEVICE) का इस्तेमाल करते समय, इस नंबर पर कॉल करके पक्का करें कि डिवाइस में, मैनेज किए जा रहे Google Play खातों के साथ काम किया जा सकता है:

KotlinJava
androidForWorkAccountSupport.ensureWorkingEnvironment(callback)
androidForWorkAccountSupport.ensureWorkingEnvironment(callback);

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

KotlinJava
object : WorkingEnvironmentCallback() {
    override fun onSuccess() {
        // Can now provision the managed Google Play Account
    }
    override fun onFailure(error: Error) {
        // Notify user, handle error (check network connection)
    }
}
new WorkingEnvironmentCallback() {
    @Override
    public void onSuccess() {
        // Can now provision the managed Google Play Account
    }

    @Override
    public void onFailure(Error error) {
        // Notify user, handle error (check network connection)
    }
}

कारोबार के लिए Google Play खाता जोड़ें

Android फ़्रेमवर्क का AccountManager किसी डिवाइस में, कारोबार के लिए Google Play खाता जोड़ सकता है. के साथ आसानी से इंटरैक्शन करने के लिए AccountManager, हेल्पर फ़ंक्शन का इस्तेमाल करें (नीचे दिए गए उदाहरण में दिखाया गया है) को DPC सपोर्ट लाइब्रेरी से डाउनलोड किया जा सकेगा. फ़ंक्शन Google Play सर्वर से मिले टोकन को हैंडल करता है और प्रावधान करने की सुविधा देता है मैनेज किया जा सकता है. जब 'कारोबार के लिए Google Play' से, फ़ंक्शन दिखता है खाता मान्य स्थिति में है:

KotlinJava
androidForWorkAccountSupport.addAndroidForWorkAccount(token, accountAddedCallback)
androidForWorkAccountSupport.addAndroidForWorkAccount(token, accountAddedCallback);
  • token—उपयोगकर्ता की पुष्टि करने वाला ऐसा टोकन जिसे Google ने जनरेट किया है ईएमएम एपीआई Users.generateAuthenticationToken() कॉल चलाएं.
  • accountAddedCallback—कारोबार के लिए Google Play खाता दिखाता है जिसे डिवाइस में जोड़ा गया. इस कॉलबैक में यह शामिल होना चाहिए onAccountReady() और onFailure() तरीके.
KotlinJava
val workAccountAddedCallback = object : WorkAccountAddedCallback() {
    override fun onAccountReady(account: Account, deviceHint: String) {
        // Device account was successfully added to the device
        // and is ready to be used.
    }

    override fun onFailure(error: Error) {
        // The account was not successfully added. Check that the token
        // provided was valid (it expires after a certain period of time).
    }
}
WorkAccountAddedCallback workAccountAddedCallback =
    new WorkAccountAddedCallback() {
        @Override
        public void onAccountReady(Account account, String deviceHint) {
            // Device account was successfully added to the device
            // and is ready to be used.
        }

        @Override
        public void onFailure(Error error) {
            // The account was not successfully added. Check that the token
            // provided was valid (it expires after a certain period of time).
        }
};
  • डिवाइस एडमिन एपीआई के बारे में ज़्यादा जानने के लिए, यहां देखें डिवाइस एडमिनिस्ट्रेशन.
  • Android Enterprise के प्रावधान करने के तरीकों के बारे में जानने के लिए, यहां जाएं इसमें डिवाइस सेट अप करें Android Enterprise के लिए डेवलपर के लिए गाइड.
  • GitHub सैंपल के लिए, जो बेसिक वर्क प्रोफ़ाइल बनाने का तरीका दिखाता है, BasicManagedProfile देखें.
  • GitHub सैंपल के लिए, जो दूसरे ऐप्लिकेशन पर कॉन्फ़िगरेशन को प्रोफ़ाइल स्वामी, देखें AppRequestionEnforcer.