অ্যাপস কনফিগার করুন

এন্টারপ্রাইজগুলির জন্য ডিজাইন করা কিছু অ্যাপের মধ্যে অন্তর্নির্মিত সেটিংস অন্তর্ভুক্ত রয়েছে যাকে পরিচালিত কনফিগারেশন বলা হয় যা আইটি প্রশাসকরা দূরবর্তীভাবে কনফিগার করতে পারে। উদাহরণস্বরূপ, যখন একটি ডিভাইস Wi-Fi এর সাথে সংযুক্ত থাকে তখন একটি অ্যাপে শুধুমাত্র ডেটা সিঙ্ক করার বিকল্প থাকতে পারে। আইটি প্রশাসকদের পরিচালিত কনফিগারেশনগুলি নির্দিষ্ট করার ক্ষমতা প্রদান করা এবং সেগুলিকে ডিভাইসে প্রয়োগ করা সমস্ত সমাধান সেটের জন্য একটি প্রয়োজনীয়তা৷

নীচের চিত্রটি Google Play EMM API-এর মাধ্যমে উপলব্ধ বিকল্পগুলির একটি ওভারভিউ সহ পরিচালিত কনফিগারেশন পরিচালনার কিছু মূল ধাপকে চিত্রিত করে৷

একটি অ্যাপ পরিচালিত কনফিগারেশন সমর্থন করে কিনা তা পরীক্ষা করুন

একটি অ্যাপ পরিচালিত কনফিগারেশন সমর্থন করে কিনা তা নির্ধারণ করতে Products.getAppRestrictionsSchema ব্যবহার করুন। এখানে একটি উদাহরণ যা Java এর জন্য Google Play EMM API ক্লায়েন্ট লাইব্রেরি ব্যবহার করে।

public AppRestrictionsSchema getAppRestrictionsSchema(String enterpriseId,
    String productId, String language) throws IOException {
  return androidEnterprise
     .product()
     .getAppRestrictionsSchema(enterpriseId, productId, language)
     .execute();
}

সমস্ত অ্যাপ একটি অ্যাপ সীমাবদ্ধতা (পরিচালিত কনফিগারেশন) স্কিমা ফেরত দেয়। যদি কলটি একটি খালি স্কিমা ফেরত দেয়, তাহলে অ্যাপটি কনফিগারেশন পরিচালনা সমর্থন করে না। যদি কলটি সীমাবদ্ধতার একটি সেট সমন্বিত একটি স্কিমা ফেরত দেয়, তাহলে অ্যাপটি পরিচালিত কনফিগারেশন সমর্থন করে। উদাহরণস্বরূপ, একটি VPN এর মাধ্যমে দূরবর্তী মুদ্রণ সক্ষম করার জন্য একটি বৈশিষ্ট্য রয়েছে এমন একটি অ্যাপ Products.getAppRestrictionsSchema এ নিম্নলিখিত প্রতিক্রিয়া ফিরিয়ে দিতে পারে।

    {
      "kind": "androidenterprise#appRestrictionsSchema",
      "restrictions": [
        {
          "key": "printing_enabled",
          "title": "Enable printing",
          "restrictionType": "bool",
          "description": "Allow user to print from the app",
          "defaultValue": {
            "type": "bool",
            "valueBool": true,
          }
        },
        {
          "key": "vpn_configurations",
          "title": "VPN configurations",
          "restrictionType": "bundle_array",
          "description": "List of VPN configurations",
          "nestedRestriction": [
            {
              "key": "vpn_configuration",
              "title": "VPN configuration",
              "restrictionType": "bundle",
              "nestedRestrictions": [
                {
                  "key": "server",
                  "title": "VPN server host",
                  "restrictionType": "string"
                },
                {
                  "key": "username",
                  "title": "VPN account username",
                  "restrictionType": "string"
                }
              ]
            }
          ]
        }
      ]
    }

পরিচালিত কনফিগারেশন নির্দিষ্ট করুন

পরিচালিত কনফিগারেশনগুলিকে সমর্থন করে এমন অ্যাপগুলির জন্য, আপনি পরিচালিত কনফিগারেশন iframe এম্বেড করে বা আপনার নিজস্ব UI বিকাশ করে আপনার EMM কনসোল থেকে সেগুলি সেট করতে IT প্রশাসকদের সক্ষম করতে পারেন৷

বিকল্প 1: পরিচালিত কনফিগারেশন আইফ্রেম এম্বেড করুন

পরিচালিত কনফিগারেশন সমর্থন করার সবচেয়ে সহজ উপায় হল আপনার EMM কনসোলে পরিচালিত কনফিগারেশন iframe এম্বেড করা। iframe একটি নির্দিষ্ট অ্যাপের জন্য পরিচালিত কনফিগারেশন স্কিমা পুনরুদ্ধার করে এবং IT অ্যাডমিনদের কাস্টম কনফিগারেশন প্রোফাইল সংরক্ষণ, সম্পাদনা এবং মুছে ফেলার অনুমতি দেয়। ব্যবহারকারীর ডিভাইসে কাস্টম প্রোফাইল প্রয়োগ করতে আপনি Play EMM API ব্যবহার করতে পারেন। iframe সম্পর্কে আরও জানতে এবং কীভাবে এটি আপনার কনসোলে যুক্ত করবেন, দেখুন পরিচালিত কনফিগারেশন iframe

বিকল্প 2: আপনার নিজস্ব UI তৈরি করুন

Products.getAppRestrictionsSchema থেকে প্রত্যাবর্তিত কনফিগারেশনগুলি ব্যবহার করে, আপনি আপনার নিজস্ব UI তৈরি করতে পারেন যা IT প্রশাসকদের অ্যাপ কনফিগারেশনগুলি পরিচালনা করতে দেয়৷

পরিচালিত কনফিগারেশন প্রয়োগ করুন

ডিভাইসগুলিতে পরিচালিত কনফিগারেশন প্রয়োগ করার জন্য, আপনার DPC অবশ্যই DPC সাপোর্ট লাইব্রেরির সাথে একত্রিত হতে হবে, যেমনটি বিল্ড একটি ডিভাইস পলিসি কন্ট্রোলারে বিস্তারিত আছে। পরিচালিত কনফিগারেশনগুলি প্রয়োগ করতে DPC সমর্থন লাইব্রেরি স্বচ্ছভাবে Google Play-এ প্রতিনিধিদের পরিচালনা করে৷

আপনি Device policy policy.productPolicy.managedConfiguration সেট করে একটি ডিভাইসে পরিচালিত কনফিগারেশন প্রয়োগ করতে পারেন।

একটি mcmId ব্যবহার করে

প্রতিবার আইটি প্রশাসক পরিচালিত কনফিগারেশন iframe থেকে একটি নতুন কনফিগারেশন প্রোফাইল সংরক্ষণ করে, iframe mcmId নামে একটি অনন্য শনাক্তকারী প্রদান করে। একটি mcmId এটি প্রয়োগ করা যেতে পারে এমন ডিভাইসের সংখ্যার কোন সীমা নেই এবং এটির মেয়াদ শেষ হওয়ার সময় নেই।

একটি ডিভাইসে একটি কনফিগারেশন প্রোফাইল প্রয়োগ করতে, Device policy policy.productPolicy.managedConfiguration.configurationVariables.mcmId সেট করুন।

আপনি যদি আপনার আইটি প্রশাসকদের পরিচালিত কনফিগারেশন আইফ্রেমে ভেরিয়েবল ব্যবহার করার অনুমতি দিতে চান (যেমন $FirstName, $LastName), আপনাকে policy.productPolicy[].managedConfiguration.configurationVariables.mcmId.variableSet[] ব্যবহার করে প্রোফাইলে থাকা যেকোনো ভেরিয়েবলকে সংজ্ঞায়িত করতে হবে policy.productPolicy[].managedConfiguration.configurationVariables.mcmId.variableSet[]

পরিচালিত বৈশিষ্ট্যের একটি তালিকা ব্যবহার করে

আপনি Device policy policy.productPolicy.managedConfiguration.managedProperty[] সেট করে পরিচালিত বৈশিষ্ট্যের একটি সেটও অন্তর্ভুক্ত করতে পারেন।

নীচের উদাহরণটি দেখায় কিভাবে একটি কনফিগারেশন সংজ্ঞায়িত করতে হয়। এই কনফিগারেশনে একটি bundle_array (একটি তালিকা) রয়েছে যা দুটি বান্ডিল বৈশিষ্ট্যের সমন্বয়ে গঠিত (সম্পর্কিত বৈশিষ্ট্যগুলির একটি গ্রুপ, এই ক্ষেত্রে, একটি VPN এর বৈশিষ্ট্য)।

    ManagedConfiguration managedConfiguration = new ManagedConfiguration()
      .setManagedProperty(
        ImmutableList.of(
            new ManagedProperty()
                .setKey("printing_enabled")
                .setValueBool(true),
            new ManagedProperty()
                .setKey("vpn_configurations")
                .setValueBundleArray(
                    ImmutableList.of(
                        new ManagedPropertyBundle().setManagedProperty(
                            ImmutableList.of(
                                new ManagedProperty()
                                    .setKey("server")
                                    .setValueString("vpn1.example.com"),
                                new ManagedProperty()
                                    .setKey("username")
                                    .setValueString("john.doe"))),
                        new ManagedPropertyBundle().setManagedProperty(
                            ImmutableList.of(
                                new ManagedProperty()
                                    .setKey("server")
                                    .setValueString("vpn2.example.com"),
                                new ManagedProperty()
                                    .setKey("username")
                                    .setValueString("jane.doe")))))));

একটি অ্যাপ সমর্থন করতে পারে এমন বিভিন্ন কনফিগারেশন বৈশিষ্ট্য সম্পর্কে আরও তথ্যের জন্য, পরিচালিত কনফিগারেশনের সংজ্ঞা দেখুন।

একটি অ্যাপের কনফিগারেশন প্রোফাইলের তালিকা করুন

আপনি কীভাবে আপনার সমাধানটি ডিজাইন করেন তার উপর নির্ভর করে, আপনি একটি অ্যাপের জন্য সংরক্ষিত কনফিগারেশন প্রোফাইলগুলির একটি তালিকা প্রদর্শন করতে চাইতে পারেন। এই তালিকাটি পুনরুদ্ধার করতে, Managedconfigurationssettings.list কল করুন।