USB এর মাধ্যমে ডেটা সিগন্যালিং অক্ষম করুন

অ্যান্ড্রয়েড ১২-এর মাধ্যমে আইটি অ্যাডমিনরা কর্পোরেট মালিকানাধীন ডিভাইসগুলোতে (চার্জিং ফাংশন ছাড়া) ইউএসবি-র মাধ্যমে ডেটা সিগন্যালিং নিষ্ক্রিয় করার সুবিধা পাচ্ছেন। এই কার্যকারিতাটি সমর্থন করার জন্য, OEM-দের অবশ্যই তাদের USB HAL আপডেট করতে হবে এবং ডিভাইস পলিসি ম্যানেজার এপিআই-এর জন্য যুক্ত হওয়া অতিরিক্ত সাপোর্ট ব্যবহার করতে হবে।

ডিভাইস পলিসি ম্যানেজার

USB-এর মাধ্যমে সিগন্যালিং নিষ্ক্রিয় করা সমর্থন করার জন্য, DevicePolicyManager এ নিম্নলিখিত তিনটি পাবলিক API অন্তর্ভুক্ত করা হয়েছে:

  • setUsbDataSignalingEnabled(boolean enabled) হলো একটি API, যা UsbManager এর enableUsbDataSignal API-কে কল করার মাধ্যমে USB ডেটা সিগন্যালিং চালু বা বন্ধ করে।
  • canUsbDataSignalingBeDisabled() হলো একটি API যা যাচাই করে দেখে যে ডিভাইসটিতে USB ডেটা সিগন্যালিং চালু বা বন্ধ করা সমর্থিত কিনা।
  • isUsbDataSignalingEnabled() হলো একটি API যা USB ডেটা সিগন্যালিং চালু করা হয়েছে কিনা তা যাচাই করে।
    • পলিসি ট্রান্সপারেন্সি ডায়ালগ উইন্ডো দেখানো হচ্ছে কি না, তা পরীক্ষা করার জন্য এটি প্রয়োজন। সিস্টেম ব্যবহারকারীরা এই নির্দিষ্ট API-টির একটি হিডেন ভ্যারিয়েন্ট কল করতে পারেন, যা ব্যবহার করে কোনো নির্দিষ্ট ব্যবহারকারীর জন্য USB ডেটা সিগন্যালিং সক্রিয় করা হয়েছে কি না, তা পরীক্ষা করা যায়।
  • ডিভাইস পলিসি ম্যানেজার বাস্তবায়নের উদাহরণ

    ডিভাইস পলিসি ম্যানেজার কীভাবে বাস্তবায়ন করতে হয় তার একটি উদাহরণ নিচে দেওয়া হলো।
    class android.app.admin.DevicePolicyManager {
        /**
         * Called by device owner or profile owner of an organization-owned managed profile to
         * enable or disable USB data signaling for the device. When disabled, USB data connections
         * (except from charging functions) are prohibited.
         *
         * <p> This API is not supported on all devices, the caller should call
         * {@link #canUsbDataSignalingBeDisabled()} to check whether enabling or disabling USB data
         * signaling is supported on the device.
         *
         * @param enabled whether USB data signaling should be enabled or not.
         * @throws SecurityException if the caller is not a device owner or a profile owner on
         *         an organization-owned managed profile.
         * @throws IllegalStateException if disabling USB data signaling is not supported or
         *         if USB data signaling fails to be enabled/disabled.
         */
        public void setUsbDataSignalingEnabled(boolean enabled);
    
    /** * Called by device owner or profile owner of an organization-owned managed profile to return * whether USB data signaling is currently enabled by the admin. * * @return {@code true} if USB data signaling is enabled, {@code false} otherwise. */ public boolean isUsbDataSignalingEnabled();
    /** * Called by the system to check whether USB data signaling is currently enabled for this user. * * @param userId which user to check for. * @return {@code true} if USB data signaling is enabled, {@code false} otherwise. * @hide */ public boolean isUsbDataSignalingEnabledForUser(@UserIdInt int userId);
    /** * Returns whether enabling or disabling USB data signaling is supported on the device. * * @return {@code true} if the device supports enabling and disabling USB data signaling. */ public boolean canUsbDataSignalingBeDisabled();

    সেটিংস

    ইউএসবি সংযোগ করার সাথে সাথেই ব্যবহারকারীরা ইউএসবি প্রেফারেন্স এবং টিথারিং সেটিংস পরিবর্তন করতে পারেন। ইউএসবি প্রেফারেন্স স্ক্রিনে প্রবেশ করতে, নিম্নলিখিত পদক্ষেপগুলি অনুসরণ করুন:

    1. সেটিংস ট্যাপ করুন।
    2. সংযুক্ত ডিভাইসগুলিতে ট্যাপ করুন।
    3. ইউএসবি ট্যাপ করুন।

    দ্রষ্টব্য: যদি USB সংযুক্ত না থাকে, তাহলে USB প্রেফারেন্স পরিবর্তন করা যাবে না এবং তা ‘সংযুক্ত ডিভাইস’ উইন্ডোতে প্রদর্শিত হবে না।

    যদি কোনো আইটি অ্যাডমিন কর্পোরেট মালিকানাধীন কোনো ডিভাইসে ইউএসবি ডেটা সিগন্যালিং নিষ্ক্রিয় করে দেন, তাহলে ব্যবহারকারী তার ইউএসবি প্রেফারেন্স পরিবর্তন করতে পারবেন না। এর পরিবর্তে, সেটিংস- এর সমস্ত ইউএসবি প্রেফারেন্স সম্পূর্ণরূপে নিষ্ক্রিয় হয়ে যাবে, যা একটি পলিসি ট্রান্সপারেন্সি ডায়ালগ উইন্ডো তৈরি করবে।

    দ্রষ্টব্য: যদি ইউএসবি ডেটা সিগন্যালিং নিষ্ক্রিয় করা থাকে, তাহলে ডেভেলপার অপশনে ইউএসবি ডিবাগিং, ডিফল্ট ইউএসবি কনফিগারেশন এবং ইউএসবি অডিও রাউটিং প্রেফারেন্স সবই নিষ্ক্রিয় হয়ে যাবে।