השבת איתות נתונים באמצעות USB

אנדרואיד 12 הוסיפה את היכולת של מנהלי IT להשבית איתות נתונים באמצעות USB במכשירים בבעלות החברה (למעט פונקציית הטעינה). על מנת לתמוך בפונקציונליות זו, יצרני OEM חייבים לעדכן את ה-USB HAL שלהם ולהשתמש בתמיכה הנוספת עבור ממשקי API של Device Policy Manager.

מנהל מדיניות התקנים

כדי לתמוך בהשבתת איתות באמצעות USB, שלושת ממשקי ה-API הציבוריים הבאים כלולים ב- DevicePolicyManager :

  • setUsbDataSignalingEnabled(boolean enabled) הוא API המאפשר או משבית איתות נתוני USB על ידי קריאה ל- enableUsbDataSignal API ב- UsbManager .
  • canUsbDataSignalingBeDisabled() הוא API שבודק האם הפעלה או השבתה של איתות נתונים USB נתמכת במכשיר.
  • isUsbDataSignalingEnabled() הוא API שבודק אם איתות נתוני USB הופעל.
    • זה נדרש כדי לבדוק אם מוצג חלון דו-שיח של שקיפות מדיניות או לא. משתמשי מערכת יכולים לקרוא לגרסה נסתרת עבור ה-API המסוים הזה שמשתמש המערכת יכול לקרוא לו כדי לבדוק אם איתות נתוני USB הופעל עבור משתמש מסוים.
  • דוגמה ליישום Device Policy Manager

    להלן דוגמה כיצד ליישם את מנהל מדיניות ההתקנים.
    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();

    הגדרות

    משתמשים יכולים לשנות את העדפות ה-USB ואת הגדרות שיתוף האינטרנט ברגע עם חיבור ה-USB. כדי לגשת למסך העדפות USB, בצע את הפעולות הבאות:

    1. הקש על הגדרות.
    2. הקש על מכשירים מחוברים.
    3. הקש על USB.

    הערה: אם ה-USB אינו מחובר, לא ניתן לשנות את העדפות ה-USB ולא יופיעו בחלון התקנים מחוברים.

    אם מנהל IT משבית את איתות נתוני USB במכשיר בבעלות החברה, המשתמש לא יכול לשנות את העדפות ה-USB שלו. במקום זאת, כל העדפות ה-USB בהגדרות מושבתות לחלוטין, מה שייצור חלון דו-שיח של שקיפות מדיניות.

    הערה: אם איתות נתוני USB מושבת, איתור באגים ב-USB, הגדרות ברירת המחדל של USB והעדפות ניתוב אודיו USB יושבתו כולם באפשרויות המפתחים.