اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release
بدلاً من aosp-main
لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
إيقاف إرسال البيانات عبر USB
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
أضاف نظام التشغيل Android 12 إمكانية إيقاف إرسال البيانات عبر منفذ USB على الأجهزة المملوكة للشركة (باستثناء وظيفة الشحن). ولتفعيل هذه الميزة، على المصنّعين الأصليّين للأجهزة تعديل وحدة HAL الخاصة بواجهة USB والاستفادة من التوافق الإضافي مع واجهات برمجة التطبيقات الخاصة بمدير سياسة الجهاز.
مدير سياسات الجهاز
لإتاحة إيقاف الإشارات عبر USB، تم تضمين واجهات برمجة التطبيقات الثلاث المتاحة للجميع التالية في
DevicePolicyManager
:
-
setUsbDataSignalingEnabled(boolean enabled)
هي واجهة برمجة تطبيقات تتيح أو تُوقف إرسال بيانات USB من خلال طلب بيانات من واجهة برمجة التطبيقات
enableUsbDataSignal
في UsbManager
.
-
canUsbDataSignalingBeDisabled()
هي واجهة برمجة تطبيقات تتحقّق مما إذا كان تفعيل إشارة بيانات USB أو إيقافها
متاحًا على الجهاز.
-
isUsbDataSignalingEnabled()
هي واجهة برمجة تطبيقات تتحقّق مما إذا كان قد تم تفعيل إشارات بيانات USB.
- هذا الإجراء مطلوب للتحقّق مما إذا كان يتم عرض مربّع حوار
نافذة شفافية السياسة أم لا. يمكن لمستخدمي النظام استدعاء صيغة مخفية لواجهة برمجة التطبيقات هذه التي يمكنهم استدعاؤها للتحقّق مما إذا تم تفعيل إرسال بيانات 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();
الإعدادات
يمكن للمستخدمين تعديل الإعدادات المفضّلة للاتصال عبر USB وإعدادات ربط الجهاز فور توصيله بمنفذ USB. للوصول إلى شاشة الإعدادات المفضّلة لـ USB، اتّبِع الخطوات التالية:
- انقر على الإعدادات.
- انقر على الأجهزة المتّصلة.
- انقر على USB.
ملاحظة: إذا لم يكن جهاز USB متصلاً، لا يمكن تعديل إعداداته المفضّلة
ولن تظهر في نافذة "الأجهزة المتصلة".
إذا أوقف مشرف تكنولوجيا المعلومات ميزة إرسال بيانات USB على جهاز مملوك للشركة، لن يتمكّن المستخدم
من تعديل الإعدادات المفضّلة لـ USB. بدلاً من ذلك، يتم إيقاف جميع الإعدادات المفضّلة لـ USB في
الإعدادات تمامًا، ما سيؤدي إلى إنشاء نافذة مربّع حوار
شفافية السياسة.
ملاحظة: في حال إيقاف إشارة بيانات USB، سيتم إيقاف خيارات تصحيح أخطاء USB وإعدادات USB التلقائية وإعدادات توجيه الصوت عبر USB المفضّلة في خيارات المطوّر.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Disable data signaling over USB\n\nAndroid 12 has added the ability for IT admins to disable data signaling\nover USB on corporate-owned devices (except for the charging function). In order to support this\nfunctionality, OEMs must update their USB HAL and utilize the added support for Device Policy\nManager APIs.\n\nDevice Policy Manager\n---------------------\n\nTo support disabling signaling over USB, the following three public APIs are included in\n`DevicePolicyManager`:\n\n- `setUsbDataSignalingEnabled(boolean enabled)` is an API that enables or disables USB data signaling by calling the `enableUsbDataSignal` API in `UsbManager`.\n- `canUsbDataSignalingBeDisabled()` is an API that checks whether enabling or disabling USB data signaling is supported on the device.\n- `isUsbDataSignalingEnabled()` is an API that checks whether USB data signaling has been enabled.\n - This is required to check whether or not a policy transparency dialog window is shown. System users can call a hidden variant for this particular API that can be called by the system user to check if USB data signaling has been enabled for a particular user.\n\n### Device Policy Manager implementation example\n\nThe following is an example of how to implement the Device Policy Manager. \n\n```\nclass android.app.admin.DevicePolicyManager {\n /**\n * Called by device owner or profile owner of an organization-owned managed profile to\n * enable or disable USB data signaling for the device. When disabled, USB data connections\n * (except from charging functions) are prohibited.\n *\n * \u003cp\u003e This API is not supported on all devices, the caller should call\n * {@link #canUsbDataSignalingBeDisabled()} to check whether enabling or disabling USB data\n * signaling is supported on the device.\n *\n * @param enabled whether USB data signaling should be enabled or not.\n * @throws SecurityException if the caller is not a device owner or a profile owner on\n * an organization-owned managed profile.\n * @throws IllegalStateException if disabling USB data signaling is not supported or\n * if USB data signaling fails to be enabled/disabled.\n */\n public void setUsbDataSignalingEnabled(boolean enabled);\n\n\n /**\n * Called by device owner or profile owner of an organization-owned managed profile to return\n * whether USB data signaling is currently enabled by the admin.\n *\n * @return {@code true} if USB data signaling is enabled, {@code false} otherwise.\n */\n public boolean isUsbDataSignalingEnabled();\n\n\n /**\n * Called by the system to check whether USB data signaling is currently enabled for this user.\n *\n * @param userId which user to check for.\n * @return {@code true} if USB data signaling is enabled, {@code false} otherwise.\n * @hide\n */\n public boolean isUsbDataSignalingEnabledForUser(@UserIdInt int userId);\n\n\n /**\n * Returns whether enabling or disabling USB data signaling is supported on the device.\n *\n * @return {@code true} if the device supports enabling and disabling USB data signaling.\n */\n public boolean canUsbDataSignalingBeDisabled();\n```\n\nSettings\n--------\n\n- Users can modify USB preference and tethering settings as soon as USB is connected. To access the USB preferences screen, do the following:\n 1. Tap **Settings.**\n 2. Tap **Connected devices.**\n 3. Tap **USB.**\n- **Note:** If USB is not connected, USB preferences can't be modified and will not appear in the Connected devices window.\n- If an IT admin disables USB data signaling on a corporate-owned device, the user can't modify their USB preferences. Instead, all USB preferences in **Settings** are totally disabled, which will create a policy transparency dialog window.\n- **Note:** If USB data signaling is disabled, USB debugging, default USB configurations, and USB audio routing preferences will all be disabled in developer options."]]