এন্টারপ্রাইজ অ্যাপের জন্য Android 9-এ কী আছে

এই পৃষ্ঠাটি Android 9-এ উপলব্ধ এন্টারপ্রাইজ API, বৈশিষ্ট্য এবং আচরণের পরিবর্তনগুলির একটি ওভারভিউ প্রদান করে৷

কাজের প্রোফাইল ইউজার ইন্টারফেস

অ্যান্ড্রয়েড 9 (এপিআই স্তর 28) ব্যবহারকারীদের ব্যক্তিগত এবং কাজের অ্যাপগুলিকে আলাদা করতে সহায়তা করার জন্য ডিফল্ট লঞ্চারে ব্যবহারকারীর ইন্টারফেস পরিবর্তনগুলি অন্তর্ভুক্ত করে। এটি সমর্থনকারী ডিভাইস নির্মাতারা ব্যবহারকারীদের অ্যাপগুলিকে আলাদা কাজ এবং ব্যক্তিগত ট্যাবে উপস্থাপন করতে পারে। লঞ্চারের কাজের ট্যাবে একটি সুইচ অন্তর্ভুক্ত করে আমরা ডিভাইস ব্যবহারকারীদের জন্য কাজের প্রোফাইল চালু এবং বন্ধ করা আরও সহজ করেছি৷

চিত্র 1. ডিফল্ট লঞ্চারের ব্যক্তিগত ট্যাব এবং কাজের প্রোফাইল সুইচ সহ কাজের ট্যাব

কাজের প্রোফাইল এবং পরিচালিত ডিভাইসগুলির বিধান করার সময়, ডিভাইস ব্যবহারকারীদের এই বৈশিষ্ট্যগুলি বুঝতে সাহায্য করার জন্য Android 9 অ্যানিমেটেড চিত্র অন্তর্ভুক্ত করে৷

প্রোফাইল জুড়ে অ্যাপ্লিকেশন পরিবর্তন করুন

অ্যান্ড্রয়েড 9 ব্যবহারকারীদের অ্যাকাউন্টগুলির মধ্যে স্যুইচ করতে সহায়তা করার জন্য একটি ভিন্ন প্রোফাইলে একটি অ্যাপের আরেকটি উদাহরণ চালু করার জন্য APIগুলি অন্তর্ভুক্ত করে। উদাহরণস্বরূপ, একটি ইমেল অ্যাপ একটি UI প্রদান করতে পারে যা ব্যবহারকারীকে দুটি ইমেল অ্যাকাউন্ট অ্যাক্সেস করতে ব্যক্তিগত প্রোফাইল এবং কাজের প্রোফাইলের মধ্যে স্যুইচ করতে দেয়। সমস্ত অ্যাপ এই APIগুলিকে কল করতে পারে একই অ্যাপের মূল কার্যকলাপ চালু করতে যদি এটি ইতিমধ্যেই অন্য প্রোফাইলে ইনস্টল করা থাকে। আপনার অ্যাপে ক্রস-প্রোফাইল অ্যাকাউন্ট স্যুইচিং যোগ করতে, CrossProfileApps ক্লাসের কলিং পদ্ধতিগুলির নীচের ধাপগুলি অনুসরণ করুন:

  1. প্রোফাইলগুলির একটি তালিকা পেতে getTargetUserProfiles() এ কল করুন আপনি অ্যাপটির অন্য একটি উদাহরণ চালু করতে পারেন৷ এই পদ্ধতিটি প্রোফাইলগুলিতে অ্যাপটি ইনস্টল করা আছে কিনা তা পরীক্ষা করে৷
  2. একটি আইকন পেতে getProfileSwitchingIconDrawable() কল করুন যা আপনি অন্য প্রোফাইলের প্রতিনিধিত্ব করতে ব্যবহার করতে পারেন।
  3. স্থানীয়কৃত পাঠ্য পেতে getProfileSwitchingLabel() কে কল করুন যা ব্যবহারকারীকে প্রোফাইল পরিবর্তন করতে অনুরোধ করে।
  4. অন্য প্রোফাইলে আপনার অ্যাপের একটি উদাহরণ চালু করতে startMainActivity() কল করুন।

আপনি যে প্রধান ক্রিয়াকলাপটি চালু করতে চান তা আপনার অ্যাপের ম্যানিফেস্ট ফাইলে একটি ACTION_MAIN অভিপ্রায় ক্রিয়া সহ ঘোষণা করা হয়েছে এবং একটি CATEGORY_LAUNCHER অভিপ্রায় বিভাগ অন্তর্ভুক্ত রয়েছে তা পরীক্ষা করুন৷

প্রোগ্রাম্যাটিকভাবে কাজের প্রোফাইল চালু বা বন্ধ করুন

ডিফল্ট লঞ্চার (অথবা যে অ্যাপগুলির অনুমতি আছে MANAGE_USERS বা MODIFY_QUIET_MODE ) UserManager.requestQuietModeEnabled() কল করে কাজের প্রোফাইল চালু বা বন্ধ করতে পারে৷ রাজ্য পরিবর্তনের আগে ব্যবহারকারীকে তাদের শংসাপত্রগুলি নিশ্চিত করতে হবে কিনা তা জানতে আপনি রিটার্ন মান পরিদর্শন করতে পারেন। যেহেতু পরিবর্তনটি তাত্ক্ষণিকভাবে নাও ঘটতে পারে, ব্যবহারকারী ইন্টারফেসটি কখন আপডেট করতে হবে তা জানতে ACTION_MANAGED_PROFILE_AVAILABLE বা ACTION_MANAGED_PROFILE_UNAVAILABLE সম্প্রচারটি শুনুন৷

UserManager.isQuietModeEnabled() এ কল করে আপনার অ্যাপ কাজের প্রোফাইলের স্থিতি পরীক্ষা করতে পারে।

ডিভাইসে যেকোন অ্যাপ লক ডাউন করুন

অ্যান্ড্রয়েড 9 থেকে শুরু করে, ডিভাইসের মালিক এবং প্রোফাইল মালিকরা (সেকেন্ডারি ব্যবহারকারীদের) অ্যাপটিকে লক টাস্ক মোডে রেখে ডিভাইসের স্ক্রিনে যেকোনো অ্যাপ লক করতে পারেন। পূর্বে, অ্যাপ ডেভেলপারদের তাদের অ্যাপে লক টাস্ক মোডের জন্য সমর্থন যোগ করতে হতো। অ্যান্ড্রয়েড 9 নন-অ্যাফিলিয়েটেড সেকেন্ডারি ব্যবহারকারীদের প্রোফাইল মালিকদের কাছে লক টাস্ক API-কে প্রসারিত করে। স্ক্রিনে একটি অ্যাপ লক করতে নিচের ধাপগুলি অনুসরণ করুন:

  1. লক টাস্ক মোডের জন্য অ্যাপ্লিকেশানগুলিকে অনুমতি দিতে DevicePolicyManager.setLockTaskPackages() এ কল করুন৷
  2. লক টাস্ক মোডে অনুমোদিত তালিকাভুক্ত অ্যাপ চালু করতে ActivityOptions.setLockTaskEnabled() এ কল করুন।

লক টাস্ক মোডে একটি অ্যাপ বন্ধ করতে, DevicePolicyManager.setLockTaskPackages() ব্যবহার করে লক টাস্ক মোড অনুমোদিত তালিকা থেকে অ্যাপটিকে সরিয়ে দিন।

সিস্টেম UI বৈশিষ্ট্যগুলি সক্ষম করুন৷

যখন লক টাস্ক মোড সক্ষম করা থাকে, তখন ডিভাইসের মালিক এবং প্রোফাইল মালিকরা DevicePolicyManager.setLockTaskFeatures() কল করে এবং নিম্নলিখিত বৈশিষ্ট্য ফ্ল্যাগগুলির একটি বিট ফিল্ড পাস করে ডিভাইসে নির্দিষ্ট সিস্টেম UI বৈশিষ্ট্যগুলি সক্ষম করতে পারেন:

লক টাস্ক মোড সক্রিয় থাকা অবস্থায় ডিভাইসে উপলব্ধ বৈশিষ্ট্যগুলির তালিকা পেতে আপনি DevicePolicyManager.getLockTaskFeatures() এ কল করতে পারেন৷ যখন একটি ডিভাইস লক টাস্ক মোড থেকে প্রস্থান করে, তখন এটি অন্যান্য ডিভাইস নীতি দ্বারা বাধ্যতামূলক অবস্থায় ফিরে আসে।

ত্রুটি ডায়ালগ দমন করুন

কিছু পরিবেশে, যেমন খুচরা প্রদর্শন বা সর্বজনীন তথ্য প্রদর্শন, আপনি ব্যবহারকারীদের ত্রুটি ডায়ালগ দেখাতে নাও চাইতে পারেন। একটি ডিভাইস পলিসি কন্ট্রোলার (DPC) DISALLOW_SYSTEM_ERROR_DIALOGS ব্যবহারকারী সীমাবদ্ধতা যোগ করে ক্র্যাশ হওয়া বা প্রতিক্রিয়াশীল অ্যাপগুলির জন্য সিস্টেম ত্রুটি ডায়ালগগুলিকে দমন করতে পারে৷ এই বিধিনিষেধটি সমস্ত ডায়ালগগুলিকে প্রভাবিত করে যখন কোনও ডিভাইসের মালিক দ্বারা প্রয়োগ করা হয় কিন্তু প্রোফাইল মালিকদের দ্বারা সীমাবদ্ধতা প্রয়োগ করা হলে শুধুমাত্র প্রাথমিক বা মাধ্যমিক ব্যবহারকারীতে দেখানো ত্রুটি ডায়ালগগুলিকে দমন করা হয়৷ এই নিষেধাজ্ঞা কাজের প্রোফাইল প্রভাবিত করে না।

Android 9-এ, ইমারসিভ পূর্ণ-স্ক্রীন মোডে চলমান অ্যাপগুলি লক টাস্ক মোডে থাকা অবস্থায় অনুস্মারক বুদ্বুদ দেখায় না। অনুস্মারক বুদ্বুদ হল একটি প্যানেল যা ব্যবহারকারীদের দেখানো হয়েছে (প্রথম লঞ্চে) যেটি ব্যাখ্যা করে কিভাবে ইমারসিভ মোড থেকে প্রস্থান করতে হয়।

ডেডিকেটেড ডিভাইসে একাধিক ব্যবহারকারীকে সমর্থন করুন

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

ক্ষণস্থায়ী ব্যবহারকারীদের পটভূমিতে তৈরি করা উচিত। এগুলি একটি ডিভাইসে সেকেন্ডারি ব্যবহারকারী হিসাবে তৈরি করা হয় এবং যখন সেগুলি বন্ধ করা হয়, সুইচ করা হয় বা ডিভাইস পুনরায় বুট হয় তখন (সংশ্লিষ্ট অ্যাপ এবং ডেটা সহ) সরানো হয়৷ একটি ক্ষণস্থায়ী ব্যবহারকারী তৈরি করতে, ডিভাইস মালিকরা করতে পারেন:

  1. DevicePolicyManager.createAndManageUser() কল করার সময় MAKE_USER_EPHEMERAL পতাকা সেট করুন।
  2. পটভূমিতে ক্ষণস্থায়ী ব্যবহারকারী শুরু করতে DevicePolicyManager.startUserInBackground() কে কল করুন।

দ্রষ্টব্য, Android 9 টার্গেট করা অ্যাপগুলি createAndManageUser() কল করার সময় UserManager.UserOperationException ধরতে হবে। ব্যবহারকারী কেন তৈরি করা হয়নি তা জানতে ব্যতিক্রমের getUserOperationResult() পদ্ধতিতে কল করুন।

ইভেন্ট বিজ্ঞপ্তি পান

DeviceAdminReceiver নিম্নলিখিত ইভেন্টগুলির জন্য বিজ্ঞপ্তি পায়:

ব্যবহারকারীদের ইভেন্ট বার্তা প্রদর্শন করুন

ডিভাইস মালিকরা তাদের সেশন শুরু এবং শেষ করার সময় ব্যবহারকারীদের কাছে প্রদর্শিত বার্তাগুলি কনফিগার করতে পারে:

লগ আউট এবং ব্যবহারকারীদের বন্ধ করুন

ডিভাইসের মালিকগণ DevicePolicyManager.setLogoutEnabled() ব্যবহার করে সেকেন্ডারি ব্যবহারকারীদের জন্য লগআউট সক্ষম কিনা তা নির্দিষ্ট করতে পারেন৷ লগআউট সক্ষম হয়েছে কিনা তা পরীক্ষা করতে, DevicePolicyManager.isLogoutEnabled() এ কল করুন।

সেকেন্ডারি ব্যবহারকারীদের প্রোফাইল মালিকরা DevicePolicyManager.logoutUser() কে কল করতে পারেন গৌণ ব্যবহারকারীকে থামাতে এবং প্রাথমিক ব্যবহারকারীতে ফিরে যেতে।

ডিভাইসের মালিকরা DevicePolicyManager.stopUser() ব্যবহার করে নির্দিষ্ট গৌণ ব্যবহারকারীকে থামাতে পারেন।

প্যাকেজ ক্যাশিং

ব্যবহারকারীদের একটি নির্দিষ্ট সেটের সাথে ভাগ করা ডিভাইসে ব্যবহারকারীর বিধানকে স্ট্রীমলাইন করতে, যেমন শিফট কর্মীদের জন্য ডিভাইস, বহু-ব্যবহারকারীর সেশনের জন্য প্রয়োজনীয় প্যাকেজগুলি ক্যাশে করা সম্ভব:

  1. APK হিসেবে রাখার জন্য প্যাকেজের তালিকা নির্দিষ্ট করতে DevicePolicyManager.setKeepUninstalledPackages() এ কল করুন। এই প্যাকেজগুলির একটি তালিকা পুনরুদ্ধার করতে, DevicePolicyManager.getKeepUninstalledPackages() কল করুন।

  2. একটি প্যাকেজ ইনস্টল করতে DevicePolicyManager.installExistingPackage() এ কল করুন যা setKeepUninstalledPackages() এর মাধ্যমে অপসারণের পরে রাখা হয়েছে।

অতিরিক্ত পদ্ধতি এবং ধ্রুবক

অ্যান্ড্রয়েড 9-এ শেয়ার করা ডিভাইসগুলিতে ব্যবহারকারীর সেশনগুলিকে আরও সমর্থন করার জন্য নিম্নলিখিত পদ্ধতিগুলি এবং ধ্রুবকগুলি অন্তর্ভুক্ত রয়েছে:

  • DevicePolicyManager.getSecondaryUsers() একটি ডিভাইসে সমস্ত মাধ্যমিক ব্যবহারকারীদের একটি তালিকা পায়।
  • DISALLOW_USER_SWITCH হল একটি ব্যবহারকারীর সীমাবদ্ধতা যা আপনি ব্যবহারকারীর সুইচিং ব্লক করতে DevicePolicyManager.addUserRestriction() কল করে সক্ষম করতে পারেন৷
  • LEAVE_ALL_SYSTEM_APPS_ENABLED হল DevicePolicyManager.createAndManageUser() এর জন্য উপলব্ধ একটি পতাকা। সেট করা হলে, ব্যবহারকারীর ব্যবস্থা করার সময় সিস্টেম অ্যাপগুলি অক্ষম করা হয় না।
  • UserManager.UserOperationException DevicePolicyManager.createAndManageUser() দ্বারা নিক্ষেপ করা হয় যখন কোনও ব্যবহারকারী তৈরি করা যায় না—ব্যতিক্রম ব্যর্থতার কারণ ধারণ করে।

প্যাকেজ ডেটা সাফ করুন এবং অ্যাকাউন্টগুলি সরান৷

ডিভাইস মালিক এবং প্রোফাইল মালিকরা একটি প্রদত্ত প্যাকেজের জন্য ব্যবহারকারীর ডেটা সাফ করতে clearApplicationUserData() কল করতে পারেন। AccountManager থেকে একটি অ্যাকাউন্ট সরাতে, ডিভাইস এবং প্রোফাইল মালিকরা removeAccount() কল করতে পারেন।

ব্যবহারকারীর সীমাবদ্ধতা এবং সেটিংসের উপর বর্ধিত নিয়ন্ত্রণ

Android 9 DPC-এর জন্য ব্যবহারকারীর সীমাবদ্ধতার একটি সেট প্রবর্তন করে, সেইসাথে একটি ডিভাইসে APN, সময় এবং সময় অঞ্চল এবং সিস্টেম সেটিংস কনফিগার করার ক্ষমতা।

APN কনফিগার করুন

ডিভাইসের মালিকরা ডিভাইসে APN কনফিগার করতে DevicePolicyManager ক্লাসে নিম্নলিখিত পদ্ধতিগুলি ব্যবহার করতে পারেন:

সময় এবং সময় অঞ্চল কনফিগার করুন

ডিভাইসের মালিকরা ডিভাইসে সময় এবং সময় অঞ্চল সেট করতে DevicePolicyManager ক্লাসে নিম্নলিখিত পদ্ধতিগুলি ব্যবহার করতে পারেন:

গুরুত্বপূর্ণ সেটিংসে ব্যবহারকারীর বিধিনিষেধ প্রয়োগ করুন

অ্যান্ড্রয়েড 9 সিস্টেম বৈশিষ্ট্য এবং সেটিংস অক্ষম করতে ব্যবহারকারীর সীমাবদ্ধতা যুক্ত করে। একটি সীমাবদ্ধতা যোগ করতে, নিম্নলিখিত UserManager ধ্রুবকগুলির মধ্যে একটি সহ DevicePolicyManager.addUserRestriction() কল করুন:

যদি একটি ডিভাইসে DISALLOW_CONFIG_BRIGHTNESS এবং DISALLOW_CONFIG_SCREEN_TIMEOUT প্রয়োগ করা হয়, ডিভাইসের মালিকরা এখনও API DevicePolicyManager.setSystemSetting() ব্যবহার করে ডিভাইসে স্ক্রীন উজ্জ্বলতা , স্ক্রীন উজ্জ্বলতা মোড এবং স্ক্রীন টাইমআউট সেটিংস সেট করতে পারেন।

পরিমাপিত ডেটা

ডিভাইসের মালিক এবং প্রোফাইল মালিকরা অ্যাপগুলিকে ডিভাইসের মিটারড-ডেটা নেটওয়ার্ক ব্যবহার করা থেকে আটকাতে পারেন। যখন ব্যবহারকারী খরচ, ডেটা সীমা, বা ব্যাটারি এবং পারফরম্যান্স সমস্যার কারণে ভারী ডেটা ব্যবহারের প্রতি সংবেদনশীল হয় তখন একটি নেটওয়ার্ককে পরিমাপ করা হয়। অ্যাপ্লিকেশানগুলিকে মিটারযুক্ত নেটওয়ার্কগুলি ব্যবহার করা থেকে আটকাতে, প্যাকেজ নামের একটি তালিকা পাস করে DevicePolicyManager.setMeteredDataDisabledPackages() এ কল করুন৷ বর্তমানে সীমাবদ্ধ অ্যাপগুলি পুনরুদ্ধার করতে, DevicePolicyManager.getMeteredDataDisabledPackages() এ কল করুন।

অ্যান্ড্রয়েডে মিটার করা ডেটা সম্পর্কে আরও জানতে, নেটওয়ার্ক ডেটা ব্যবহার অপ্টিমাইজ করা পড়ুন।

DPC মাইগ্রেট করুন

ডিভাইস পলিসি কন্ট্রোলার (ডিপিসি) একটি ডিভাইস বা কাজের প্রোফাইলের তাদের মালিকানা অন্য ডিপিসিতে স্থানান্তর করতে পারে। আপনি হয়তো মালিকানা হস্তান্তর করতে পারেন কিছু বৈশিষ্ট্য Android ম্যানেজমেন্ট এপিআই- এ স্থানান্তর করতে, আপনার উত্তরাধিকারী DPC থেকে ডিভাইসগুলি স্থানান্তর করতে, অথবা IT প্রশাসকদের আপনার EMM-এ স্থানান্তরিত করতে সহায়তা করতে। যেহেতু আপনি শুধুমাত্র DPC মালিকানা পরিবর্তন করছেন, আপনি এই বৈশিষ্ট্যটি পরিচালনার ধরন পরিবর্তন করতে ব্যবহার করতে পারবেন না, উদাহরণস্বরূপ, একটি পরিচালিত ডিভাইস থেকে একটি কাজের প্রোফাইলে স্থানান্তরিত করা বা এর বিপরীতে।

আপনার DPC-এর এই সংস্করণটি মাইগ্রেশন সমর্থন করে তা নির্দেশ করতে আপনি ডিভাইস অ্যাডমিন নীতি XML রিসোর্স ব্যবহার করতে পারেন। একটি লক্ষ্য ডিপিসি নির্দেশ করে যে এটি <support-transfer-ownership> নামের একটি উপাদান অন্তর্ভুক্ত করে মালিকানা পেতে পারে। নীচের উদাহরণটি দেখায় যে আপনি কীভাবে এটি আপনার DPC এর ডিভাইস অ্যাডমিন XML ফাইলে করতে পারেন:

<device-admin xmlns:android="http://schemas.android.com/apk/res/android">
    <support-transfer-ownership />
    <uses-policies>
        <limit-password />
        <watch-login />
        <reset-password />
    </uses-policies>
</device-admin>

যে DPCগুলি নতুন DPC অ্যাপে মালিকানা স্থানান্তর করতে চায় তা DeviceAdminInfo পদ্ধতি supportsTransferOwnership() এ কল করে লক্ষ্য DPC-এর সংস্করণ মাইগ্রেশন সমর্থন করে কিনা তা পরীক্ষা করতে পারে। মালিকানা হস্তান্তর করার আগে, অ্যাপ স্বাক্ষরের তুলনা করে লক্ষ্য ডিপিসি যাচাই করা উৎস DPC-এর দায়িত্ব। PackageManager ক্লাসে কোড-সাইন স্বাক্ষরের সাথে কাজ করার পদ্ধতি অন্তর্ভুক্ত করা হয়।

অ্যান্ড্রয়েড একটি মালিকানা স্থানান্তরের মাধ্যমে উৎস DPC-এর সিস্টেম এবং ব্যবহারকারীর নীতিগুলি বজায় রাখে — DPC-কে এগুলি স্থানান্তর করতে হবে না। একটি উৎস DPC একটি PersistableBundle এ কী-মান জোড়া ব্যবহার করে লক্ষ্য DPC-তে কাস্টম ডেটা পাঠাতে পারে। একটি সফল স্থানান্তরের পরে, টার্গেট ডিপিসি DevicePolicyManager.getTransferOwnershipBundle() এ কল করে এই ডেটা পুনরুদ্ধার করতে পারে।

একটি পরিচালিত ডিভাইস বা কাজের প্রোফাইলের মালিকানা হস্তান্তর করার পদক্ষেপগুলি একই:

  1. উৎস DPC চেক করে যে টার্গেট DPC-এর সংস্করণ মাইগ্রেশন সমর্থন করে এবং নিশ্চিত করে যে লক্ষ্য DPC-এর অ্যাপ স্বাক্ষর একটি প্রত্যাশিত মানের সাথে মেলে।
  2. উৎস DPC স্থানান্তর শুরু করতে transferOwnership() কল করে।
  3. সিস্টেম টার্গেট ডিপিসিকে সক্রিয় অ্যাডমিন করে এবং এটিকে পরিচালিত ডিভাইস বা কাজের প্রোফাইলের মালিক হিসাবে সেট করে।
  4. টার্গেট ডিপিসি onTransferOwnershipComplete() কলব্যাক গ্রহণ করে এবং bundle আর্গুমেন্ট থেকে মান ব্যবহার করে নিজেকে কনফিগার করতে পারে।
  5. স্থানান্তরের সাথে কিছু ভুল হলে, সিস্টেমটি মালিকানাকে উৎস DPC-তে ফিরিয়ে দেয়। যদি আপনার সোর্স ডিপিসি নিশ্চিত করতে চায় যে মালিকানা স্থানান্তর সফল হয়েছে, তাহলে সোর্স ডিপিসি আর সক্রিয় প্রশাসক নয় তা পরীক্ষা করতে isAdminActive() কে কল করুন।

প্রোফাইলের মালিক পরিবর্তন হলে কাজের প্রোফাইলে চলমান সমস্ত অ্যাপ ACTION_PROFILE_OWNER_CHANGED সম্প্রচার পায়। একটি পরিচালিত ডিভাইসে চলমান অ্যাপ্লিকেশানগুলি যখন ডিভাইসের মালিক পরিবর্তন হয় তখন ACTION_DEVICE_OWNER_CHANGED সম্প্রচার পায়৷

সম্পূর্ণরূপে পরিচালিত ডিভাইসে কাজের প্রোফাইল

ডিভাইস মালিক এবং প্রোফাইল মালিক হিসাবে চলমান একটি DPC এর দুটি দৃষ্টান্ত স্থানান্তর দুটি পর্যায়ে ঘটে। যখন ব্যক্তিগত প্রোফাইল এবং কাজের প্রোফাইল অনুমোদিত হয় , নিম্নলিখিত ক্রমে স্থানান্তর সম্পূর্ণ করুন:

  1. প্রথমে, কাজের প্রোফাইলের মালিকানা হস্তান্তর করুন।
  2. কাজের প্রোফাইল টার্গেট ডিপিসিতে স্থানান্তরিত হয়েছে তা নিশ্চিত করতে onTransferAffiliatedProfileOwnershipComplete() DeviceAdminReceiver কলব্যাকের জন্য অপেক্ষা করুন।
  3. অবশেষে, টার্গেট ডিপিসিতে পরিচালিত ডিভাইসের মালিকানা হস্তান্তর করুন।

ওভার-দ্য-এয়ার (OTA) আপডেট স্থগিত করুন

ডিভাইসের মালিকরা 90 দিনের জন্য ডিভাইসে OTA সিস্টেম আপডেট স্থগিত করতে পারেন যাতে এই ডিভাইসগুলিতে চলমান OS সংস্করণটি জটিল সময়কালে (যেমন ছুটির দিন) স্থগিত করা যায়। ডিভাইসটিকে অনির্দিষ্টকালের জন্য হিমায়িত করা রোধ করতে সিস্টেমটি যেকোন সংজ্ঞায়িত ফ্রিজ সময়ের পরে একটি বাধ্যতামূলক 60-দিনের বাফার প্রয়োগ করে।

হিমায়িত সময়ের মধ্যে:

  • মুলতুবি থাকা OTA আপডেট সম্পর্কে ডিভাইসগুলি কোনো বিজ্ঞপ্তি পায় না।
  • ডিভাইসগুলি OS-এ কোনো OTA আপডেট ইনস্টল করে না।
  • ডিভাইস ব্যবহারকারীরা সেটিংসে OTA আপডেটের জন্য ম্যানুয়ালি চেক করতে পারবেন না।

একটি ফ্রিজ পিরিয়ড সেট করতে, SystemUpdatePolicy.setFreezePeriods() কল করুন। যেহেতু ফ্রিজ পিরিয়ড বার্ষিক পুনরাবৃত্তি হয়, সেহেতু পিরিয়ডের শুরু এবং শেষের তারিখগুলিকে পূর্ণসংখ্যা দ্বারা উপস্থাপিত করা হয় যা বছর শুরু হওয়ার পর থেকে কত দিন গণনা করে। প্রারম্ভিক দিনটি পূর্ববর্তী যেকোন ফ্রিজ পিরিয়ড শেষ হওয়ার কমপক্ষে 60 দিন পরে শুরু হতে হবে। সিস্টেম আপডেট পলিসি অবজেক্টে আগে সেট করা ফ্রিজ পিরিয়ডের তালিকা পেতে ডিভাইস মালিকরা SystemUpdatePolicy.getFreezePeriods() কল করতে পারেন। DevicePolicyManager.getSystemUpdatePolicy() ডিভাইসের মালিকের দ্বারা সেট করা যেকোনো ফ্রিজ পিরিয়ড ফেরত দিতে আপডেট করা হয়েছে।

একটি কাজের প্রোফাইলে শেয়ার করা সীমাবদ্ধ করুন

প্রোফাইল মালিকরা ব্যবহারকারীদের DISALLOW_SHARE_INTO_MANAGED_PROFILE ব্যবহারকারী সীমাবদ্ধতা যোগ করে ডিভাইসে একটি কাজের প্রোফাইলে ব্যক্তিগত ডেটা শেয়ার করা থেকে বিরত রাখতে পারেন৷ এই নিষেধাজ্ঞাটি নিম্নলিখিত উদ্দেশ্য পরিচালনা এবং ভাগ করে নেওয়াকে বাধা দেয়:

  • ব্যক্তিগত প্রোফাইল অ্যাপগুলি কাজের প্রোফাইল অ্যাপের সাথে ডেটা এবং ফাইল শেয়ার করে।
  • কাজের প্রোফাইল অ্যাপ ব্যক্তিগত প্রোফাইল থেকে আইটেম বাছাই করে—উদাহরণস্বরূপ, ছবি বা ফাইল।

এই সীমাবদ্ধতা সেট করার পরে, আপনার DPC এখনও addCrossProfileIntentFilter() কল করে ক্রস-প্রোফাইল অ্যাক্টিভিটি ইন্টেন্টের অনুমতি দিতে পারে।

হার্ডওয়্যার-সুরক্ষিত কী এবং মেশিন সার্টিফিকেট

Android 9 আপনাকে কী এবং সার্টিফিকেটগুলির সাথে কাজ করতে সহায়তা করার জন্য API যোগ করে যা আপনি সুরক্ষিতভাবে ডিভাইস সনাক্ত করতে একত্রিত করতে পারেন। প্রোফাইল মালিক বা ডিভাইস মালিক মোডে চলমান একটি DPC, অথবা একটি অর্পিত শংসাপত্র ইনস্টলার , নিম্নলিখিত কাজগুলি সম্পূর্ণ করতে পারে:

  • অ্যান্ড্রয়েড ডিভাইসের সুরক্ষিত হার্ডওয়্যারে (যেমন একটি বিশ্বস্ত এক্সিকিউশন এনভায়রনমেন্ট (TEE) বা সিকিউর এলিমেন্ট (SE)) কী এবং সার্টিফিকেট তৈরি করুন। জেনারেট করা কীগুলি কখনই সুরক্ষিত হার্ডওয়্যার ছেড়ে যায় না এবং Android KeyChain থেকে ব্যবহার করা যেতে পারে৷ DevicePolicyManager.generateKeyPair() অ্যালগরিদম সরবরাহকারী কল করুন ( KeyPairGenerator দেখুন) এবং যে কোনো হার্ডওয়্যার আইডি যা আপনি সত্যায়িত করতে চান, যেমন সিরিয়াল নম্বর বা IMEI। সুরক্ষিত হার্ডওয়্যার পরিবর্তন সম্পর্কে আরও জানতে, Android 9 নিরাপত্তা বর্ধিতকরণ দেখুন।
  • একটি বিদ্যমান ডিভাইস-জেনারেটেড কী সহ একটি শংসাপত্র সংযুক্ত করুন৷ DevicePolicyManager.setKeyPairCertificate() কে কল করুন যা বিদ্যমান কী এবং সার্টিফিকেট চেইনের উপনাম সরবরাহ করে—লিফ সার্টিফিকেট থেকে শুরু করে এবং ক্রমানুসারে বিশ্বাসের চেইন সহ।
  • নিশ্চিত করুন যে সুরক্ষিত হার্ডওয়্যারটি ব্যবহার করার আগে কীটি সুরক্ষিত করে। কোন প্রক্রিয়াগুলি কী রক্ষা করে তা পরীক্ষা করতে, কী প্রত্যয়নের ধাপগুলি অনুসরণ করুন৷
  • ডিভাইসের মালিক এবং অর্পিত শংসাপত্র ইনস্টলাররা Android সিস্টেম সংস্করণ সহ ডিভাইসগুলির হার্ডওয়্যার আইডিগুলির একটি স্বাক্ষরিত বিবৃতি পেতে পারেন৷ idAttestationFlags আর্গুমেন্টে এক বা একাধিক ID_TYPE_BASE_INFO , ID_TYPE_SERIAL , ID_TYPE_IMEI , বা ID_TYPE_MEID পাস করে DevicePolicyManager.generateKeyPair() কে কল করুন। ফেরত দেওয়া শংসাপত্রটি প্রত্যয়ন রেকর্ডে হার্ডওয়্যার আইডি অন্তর্ভুক্ত করে। আপনি যদি হার্ডওয়্যার আইডিগুলি অন্তর্ভুক্ত করতে না চান তবে 0 পাস করুন। প্রোফাইল মালিকরা শুধুমাত্র প্রস্তুতকারকের তথ্য পেতে পারেন ( ID_TYPE_BASE_INFO পাস করে)। ডিভাইসটি আইডি সত্যায়িত করতে পারে কিনা তা পরীক্ষা করতে, isDeviceIdAttestationSupported() এ কল করুন।
  • মূল শংসাপত্রগুলিকে অনির্বাচিত করে এন্টারপ্রাইজ কীগুলি (নন-এন্টারপ্রাইজ কাজগুলিতে) অপব্যবহার করা থেকে ডিভাইস ব্যবহারকারীদের আটকান৷ সিস্টেম পিকার প্যানেলে অনির্বাচিত শংসাপত্রগুলি অন্তর্ভুক্ত করে না। আপনার DeviceAdminReceiver.onChoosePrivateKeyAlias() কলব্যাক পদ্ধতিতে, আপনার এন্টারপ্রাইজ কীতে উপনামটি ফেরত দিন যাতে সিস্টেম স্বয়ংক্রিয়ভাবে ব্যবহারকারীর পক্ষে শংসাপত্রটি নির্বাচন করে৷ একটি কী অনির্বাচনযোগ্য করতে, নিম্নলিখিত DevicePolicyManager পদ্ধতিগুলিকে কল করুন:

এই APIগুলিকে একত্রিত করে, এন্টারপ্রাইজগুলি নিরাপদে ডিভাইসগুলি সনাক্ত করতে পারে এবং অ্যাক্সেস দেওয়ার আগে তাদের অখণ্ডতা নিশ্চিত করতে পারে:

  1. Android ডিভাইস সুরক্ষিত হার্ডওয়্যারে একটি নতুন ব্যক্তিগত কী তৈরি করে। কারণ ব্যক্তিগত কী কখনই সুরক্ষিত হার্ডওয়্যার ছেড়ে যায় না, এটি গোপন থাকে।
  2. ডিভাইসটি সার্ভারে সার্টিফিকেট সাইনিং রিকোয়েস্ট (CSR) তৈরি করতে এবং পাঠাতে কী ব্যবহার করে। CSR-এ ডিভাইস আইডি সমন্বিত প্রত্যয়ন রেকর্ড অন্তর্ভুক্ত থাকে।
  3. সার্ভার সার্টিফিকেট চেইনকে যাচাই করে (একটি Google শংসাপত্রে রুট করা) এবং প্রত্যয়ন রেকর্ড থেকে ডিভাইস মেটাডেটা বের করে।
  4. সার্ভার নিশ্চিত করে যে সুরক্ষিত হার্ডওয়্যার ব্যক্তিগত কী রক্ষা করে এবং ডিভাইস আইডিগুলি এন্টারপ্রাইজের রেকর্ডের সাথে মেলে৷ সার্ভার অ্যান্ড্রয়েড সিস্টেম এবং প্যাচ সংস্করণগুলি যে কোনও প্রয়োজনীয়তা পূরণ করে তাও পরীক্ষা করতে পারে৷
  5. সার্ভার CSR থেকে একটি শংসাপত্র তৈরি করে এবং শংসাপত্রটি ডিভাইসে পাঠায়।
  6. ডিভাইসটি প্রাইভেট কী (যা সুরক্ষিত হার্ডওয়্যারে রয়ে গেছে) এর সাথে শংসাপত্রকে জোড়া দেয় যা অ্যাপগুলিকে এন্টারপ্রাইজ পরিষেবাগুলিতে সংযোগ করতে সক্ষম করে৷

আরো নিরাপত্তা API, বৈশিষ্ট্য, এবং পরিবর্তন

নিরাপত্তা লগ এবং নেটওয়ার্ক লগ জন্য আইডি

Android 9 নিরাপত্তা এবং নেটওয়ার্ক কার্যকলাপ লগ আইডি অন্তর্ভুক্ত. প্রতিটি ইভেন্টের জন্য সাংখ্যিক আইডি একঘেয়েভাবে বৃদ্ধি পায়, যা আইটি অ্যাডমিনদের জন্য তাদের লগে ফাঁক খুঁজে পাওয়া সহজ করে তোলে। যেহেতু নিরাপত্তা লগ এবং নেটওয়ার্ক লগ পৃথক সংগ্রহ, সিস্টেম পৃথক ID মান বজায় রাখে।

ID মান পেতে SecurityEvent.getId() , DnsEvent.getId() বা ConnectEvent.getId() এ কল করুন। যখনই একটি DPC লগিং সক্ষম করে বা ডিভাইসটি পুনরায় চালু হয় তখন সিস্টেমটি ID রিসেট করে। DevicePolicyManager.retrievePreRebootSecurityLogs() কল করার মাধ্যমে আনা নিরাপত্তা লগ এই আইডিগুলিকে অন্তর্ভুক্ত করে না৷

নিরাপত্তা লগিং

সিকিউরিটি লগিং প্রতিটি SecurityEvent একটি লগ লেভেল বরাদ্দ করে। লগ লেভেল পেতে, getLogLevel() কল করুন। এই পদ্ধতিটি একটি লগ স্তরের মান প্রদান করে যা এর মধ্যে একটি হতে পারে: LEVEL_INFO , LEVEL_WARNING , বা LEVEL_ERROR

Android 9 নীচের টেবিলে তালিকাভুক্ত ইভেন্টগুলিকে নিরাপত্তা লগগুলিতে লগ করে। একটি ইভেন্টের ট্যাগ চেক করতে, getTag() কল করুন। ইভেন্ট ডেটা পুনরুদ্ধার করতে, getData() কল করুন।

ট্যাগ ঘটনা বিবরণী
TAG_CERT_AUTHORITY_INSTALLED সিস্টেমের শংসাপত্র সঞ্চয়স্থানে একটি নতুন রুট শংসাপত্র ইনস্টল করার একটি প্রচেষ্টা৷
TAG_CERT_AUTHORITY_REMOVED সিস্টেমের শংসাপত্র সঞ্চয়স্থান থেকে একটি রুট শংসাপত্র সরানোর একটি প্রচেষ্টা৷
TAG_CERT_VALIDATION_FAILURE একটি Wi-Fi শংসাপত্র সংযোগের সময় একটি বৈধতা পরীক্ষা ব্যর্থ হয়েছে৷
TAG_CRYPTO_SELF_TEST_COMPLETED সিস্টেমটি ক্রিপ্টোগ্রাফিক স্ব-পরীক্ষা সম্পন্ন করেছে।
TAG_KEYGUARD_DISABLED_FEATURES_SET একটি প্রশাসক অ্যাপ একটি ডিভাইস বা কাজের প্রোফাইল লক স্ক্রিনের বৈশিষ্ট্যগুলি অক্ষম করেছে৷
TAG_KEY_DESTRUCTION একটি ক্রিপ্টোগ্রাফিক কী মুছে ফেলার চেষ্টা৷
TAG_KEY_GENERATED একটি নতুন ক্রিপ্টোগ্রাফিক কী তৈরি করার প্রচেষ্টা৷
TAG_KEY_IMPORT একটি নতুন ক্রিপ্টোগ্রাফিক কী আমদানি করার চেষ্টা৷
TAG_KEY_INTEGRITY_VIOLATION Android একটি ক্ষতিগ্রস্ত এনক্রিপশন বা প্রমাণীকরণ কী সনাক্ত করেছে৷
TAG_LOGGING_STARTED নিরাপত্তা লগিং রেকর্ডিং শুরু.
TAG_LOGGING_STOPPED নিরাপত্তা লগিং রেকর্ডিং বন্ধ.
TAG_LOG_BUFFER_SIZE_CRITICAL নিরাপত্তা লগ বাফার তার ক্ষমতা 90% পৌঁছেছে.
TAG_MAX_PASSWORD_ATTEMPTS_SET একটি অ্যাডমিন অ্যাপ অনুমোদিত ভুল-পাসওয়ার্ড প্রচেষ্টার সংখ্যা সেট করে।
TAG_MAX_SCREEN_LOCK_TIMEOUT_SET একটি অ্যাডমিন অ্যাপ সর্বোচ্চ স্ক্রিন-লক টাইমআউট সেট করে।
TAG_MEDIA_MOUNT ডিভাইসটি অপসারণযোগ্য স্টোরেজ মিডিয়া মাউন্ট করেছে।
TAG_MEDIA_UNMOUNT ডিভাইসটি অপসারণযোগ্য স্টোরেজ মিডিয়া আনমাউন্ট করেছে।
TAG_OS_SHUTDOWN অ্যান্ড্রয়েড সিস্টেম বন্ধ।
TAG_OS_STARTUP অ্যান্ড্রয়েড সিস্টেম চালু হয়েছে।
TAG_PASSWORD_COMPLEXITY_SET একটি অ্যাডমিন অ্যাপ পাসওয়ার্ড জটিলতার প্রয়োজনীয়তা সেট করে।
TAG_PASSWORD_EXPIRATION_SET একটি প্রশাসক অ্যাপ একটি পাসওয়ার্ড মেয়াদ শেষ হওয়ার সময়কাল সেট করে।
TAG_PASSWORD_HISTORY_LENGTH_SET একটি প্রশাসক অ্যাপ একটি পাসওয়ার্ড ইতিহাসের দৈর্ঘ্য সেট করে, ব্যবহারকারীদের পুরানো পাসওয়ার্ড পুনরায় ব্যবহার করতে বাধা দেয়।
TAG_REMOTE_LOCK একটি অ্যাডমিন অ্যাপ ডিভাইস বা কাজের প্রোফাইল লক করেছে।
TAG_USER_RESTRICTION_ADDED একটি অ্যাডমিন অ্যাপ ব্যবহারকারীর সীমাবদ্ধতা সেট করে।
TAG_USER_RESTRICTION_REMOVED একটি অ্যাডমিন অ্যাপ ব্যবহারকারীর সীমাবদ্ধতা সরিয়ে দিয়েছে।
TAG_WIPE_FAILURE একটি ডিভাইস বা কাজের প্রোফাইল মোছার প্রচেষ্টা ব্যর্থ হয়েছে৷

কাজের প্রোফাইল লক স্ক্রিন চ্যালেঞ্জ

অ্যান্ড্রয়েড 9 থেকে শুরু করে, প্রোফাইল মালিকরা ব্যবহারকারীদের DISALLOW_UNIFIED_PASSWORD ব্যবহারকারী সীমাবদ্ধতা ব্যবহার করে তাদের কাজের প্রোফাইলের জন্য একটি পৃথক লক স্ক্রিন চ্যালেঞ্জ সেট করতে বাধ্য করতে পারেন৷ একজন ব্যবহারকারীর ডিভাইস এবং কাজের প্রোফাইলের জন্য একই লক স্ক্রিন চ্যালেঞ্জ সেট করা আছে কিনা তা পরীক্ষা করতে, DevicePolicyManager.isUsingUnifiedPassword() এ কল করুন।

যদি একটি ডিভাইসের একটি পৃথক কাজের প্রোফাইল লক স্ক্রীন থাকে, DevicePolicyManager.setMaximumTimeToLock() শুধুমাত্র পুরো ডিভাইসের পরিবর্তে কাজের প্রোফাইলের জন্য একটি লক স্ক্রীন সময়সীমা সেট করে৷

বিকাশকারী সরঞ্জাম অ্যাক্সেস

কাজের প্রোফাইলে কাজের ডেটা রাখতে সাহায্য করার জন্য, Android ডিবাগ ব্রিজ (adb) টুলটি কাজের প্রোফাইলের ডিরেক্টরি এবং ফাইলগুলি অ্যাক্সেস করতে পারে না৷

আরো বায়োমেট্রিক বিকল্পের জন্য সমর্থন

Android 9 একটি ওয়ার্ক প্রোফাইলের লক স্ক্রিনে বায়োমেট্রিক হার্ডওয়্যার প্রমাণীকরণের উপর সূক্ষ্ম নিয়ন্ত্রণ যুক্ত করে। KEYGUARD_DISABLE_FACE এবং KEYGUARD_DISABLE_IRIS সহ বিদ্যমান DevicePolicyManager.setKeyguardDisabledFeatures() পদ্ধতিতে কল করুন। ডিভাইস দ্বারা প্রদত্ত সমস্ত বায়োমেট্রিক প্রমাণীকরণ পদ্ধতি অক্ষম করতে, KEYGUARD_DISABLE_BIOMETRICS যোগ করুন।

ডিভাইস প্রশাসক নীতির অবমূল্যায়ন

অ্যান্ড্রয়েড 9 নীচে তালিকাভুক্ত নীতিগুলিকে ডিভাইস প্রশাসক ব্যবহার করে DPC-এর জন্য অপ্রচলিত হিসাবে চিহ্নিত করে৷ নীতিগুলি Android 9-এ কাজ করতে থাকে যেমনটি তারা আগে করেছিল৷ অ্যান্ড্রয়েড 10 রিলিজ দিয়ে শুরু করে, ডিভাইস অ্যাডমিনের দ্বারা আহ্বান করা হলে একই নীতিগুলি একটি নিরাপত্তা ব্যতিক্রম নিক্ষেপ করবে।

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

এই পরিবর্তনগুলি সম্পর্কে আরও তথ্যের জন্য, ডিভাইস অ্যাডমিন অবচয় পড়ুন।

স্ট্রীমলাইনড QR-কোড তালিকাভুক্তি

অন্তর্নির্মিত QR লাইব্রেরি

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

QR-কোড প্রভিশনিং পদ্ধতি ওয়াই-ফাই বিশদ বিবরণ নির্দিষ্ট করতে নিম্নলিখিত প্রভিশনিং অতিরিক্তগুলিকে সমর্থন করে:

প্রভিশনিং এক্সট্রা ব্যবহার করে তারিখ এবং টাইমজোন সেট করুন

QR-কোড প্রভিশনিং পদ্ধতি একটি ডিভাইসে সময় এবং টাইমজোন সেট করতে অতিরিক্ত প্রভিশনিং সমর্থন করে:

ডাটা অপশন মোছা

কাজের প্রোফাইল বা সেকেন্ডারি ব্যবহারকারীকে সরানোর সময় ডিভাইস প্রশাসকরা ব্যবহারকারীদের একটি ব্যক্তিগতকৃত বার্তা দেখাতে পারেন। বার্তাটি ডিভাইস ব্যবহারকারীদের বুঝতে সাহায্য করে যে তাদের আইটি প্রশাসক কাজের প্রোফাইল বা সেকেন্ডারি ব্যবহারকারীকে সরিয়ে দিয়েছেন। wipeData(int, CharSequence) কল করুন এবং একটি সংক্ষিপ্ত ব্যাখ্যামূলক বার্তা সরবরাহ করুন। প্রাথমিক ব্যবহারকারী বা ডিভাইস মালিকের দ্বারা কল করা হলে, সিস্টেম একটি বার্তা দেখায় না এবং ডিভাইসের একটি ফ্যাক্টরি রিসেট শুরু করে।

একটি এমবেডেড eUICC সিম থেকে সদস্যতা ডেটা সরাতে, wipeData() কল করুন এবং flags আর্গুমেন্টে WIPE_EUICC অন্তর্ভুক্ত করুন৷

অধিভুক্ত প্রোফাইল মালিকদের জন্য পদ্ধতি

নিম্নলিখিত পদ্ধতিগুলি অনুমোদিত প্রোফাইল মালিকদের জন্য উপলব্ধ: