سجلّ التغييرات في مستند تعريف التوافق مع Android

Android 14

26 يونيو 2024

2. أنواع الأجهزة

  • 2.2.1. الأجهزة:

    عرض النسخة السابقة

    • [7.6.1/H-1-1] يجب أن يتوافق مع واجهة ABI واحدة فقط (إما 64 بت فقط أو 32 بت فقط).

    عرض النسخة السابقة

    بدء متطلبات جديدة

    إذا اشتملت عمليات تنفيذ الأجهزة المحمولة على إمكانية استخدام Vulkan، فإنّ:

  • 2.4.1. الأجهزة:

    عرض النسخة السابقة

    بدء متطلبات جديدة

    إذا كانت عمليات تنفيذ جهاز الساعة الذكية تتضمّن توافقًا مع Vulkan، سيتم ما يلي:

  • 2.5.1. الأجهزة:

    عرض النسخة السابقة

    بدء متطلبات جديدة

    في حال اشتملت عمليات تنفيذ أجهزة Automotive على دعم Vulkan، سيتم ما يلي:

‫3. البرامج

  • 3.2.2. مَعلمات الإصدار:

    للمعلمة ODM_SKU:

    عرض النسخة السابقة

    يجب أن تكون قيمة هذا الحقل قابلة لترميز ASCII المكوّن من 7 بت وأن تتطابق مع التعبير العادي ^([0-9A-Za-z.,_-]+)$.

‫5. التوافق مع الوسائط المتعددة

  • 5.1.3. تفاصيل برامج ترميز الصوت:

    تمت إضافة تفاصيل حول تنسيق/برنامج ترميز Vorbis:

    عرض النسخة السابقة

    فك الترميز: التوافق مع المحتوى الأحادي والاستيريو و5.0 و5.1 بمعدلات أخذ العينات 8000 و12000 و16000 و24000 و48000 هرتز.
    الترميز: يتيح استخدام المحتوى الأحادي وترميز 5.1 مع معدّلات العينات 8000 و12000 و12000 و8000 و12000

‫7. توافُق الأجهزة

  • 7.1.4.2 Vulkan:

    عرض النسخة السابقة

  • 7.7.1. وضع أجهزة USB الطرفية:

    إزالة:

    عرض النسخة السابقة

    • يجب عدم تنفيذ صوت AOAv2 الموثَّق في مستندات الإصدار 2.0 من بروتوكول الملحق المفتوح لنظام Android. تم إيقاف صوت AOAv2 نهائيًا اعتبارًا من الإصدار 8.0 من نظام التشغيل Android (مستوى واجهة برمجة التطبيقات 26).

‫9. توافق نموذج الأمان

  • 9.7. ميزة الأمان:

    تمت إعادة ترقيم [C-SR-1] إلى [C-SR-7] لإزالة المحتوى المكرّر وإزالته [C-SR-8]:

    عرض النسخة السابقة

    • [C-SR-1] يُنصح بشدة بالاحتفاظ ببيانات kernel التي تتم كتابتها فقط أثناء وضع علامة للقراءة فقط بعد الإعداد (على سبيل المثال __ro_after_init).

    • [C-SR-2] يُنصح بشدة باستخدام التنسيق العشوائي لترميز وذاكرة النواة، وتجنُّب حالات العرض التي قد تؤدي إلى الإضرار بالعشوائية (مثل CONFIG_RANDOMIZE_BASE مع قصور برنامج الإقلاع من خلال /chosen/kaslr-seed Device Tree node أو EFI_RNG_PROTOCOL).

    • [C-SR-3] يُنصَح باستخدامها بشدة لتفعيل ميزة سلامة تدفق التحكم (CFI) في النواة لتوفير حماية إضافية من هجمات إعادة استخدام الرمز (مثل CONFIG_CFI_CLANG وCONFIG_SHADOW_CALL_STACK).

    • [C-SR-4] يُنصح بشدة بعدم إيقاف ميزة Control-Flow Integrity (CFI) أو ميزة Shadow Call Stack (SCS) أو تنقيح تدفق صحيح (IntSan) على المكوّنات التي تم تفعيلها.

    • [C-SR-5] يُنصَح باستخدامها بشدة لتفعيل CFI وSCS وIntSan لأي مكوّنات إضافية في مساحة المستخدم حساسة للأمان كما هو موضّح في CFI وIntSan.

    • [C-SR-6] يُنصح بشدة بتفعيل إعداد تسلسل استدعاء الدوال البرمجية في النواة لمنع استخدام المتغيّرات المحلية غير المهيأة (CONFIG_INIT_STACK_ALL أو CONFIG_INIT_STACK_ALL_ZERO). ويجب أيضًا ألا تفترض عمليات تنفيذ الأجهزة القيمة التي يستخدمها برنامج التجميع لإعداد القيم المحلية.

    • [C-SR-7] يُنصَح باستخدامها بشدة لتفعيل إعداد لقطات لأجزاء من الذاكرة في النواة لمنع استخدام عمليات تخصيص وحدات الذاكرة غير المعدّة (CONFIG_INIT_ON_ALLOC_DEFAULT_ON) ويجب عدم افتراض القيمة التي تستخدمها النواة لإعداد هذه التخصيصات.

  • 9.11. المفاتيح وبيانات الاعتماد:

    عرض النسخة السابقة

    • يجب أن يتيح [C-1-6] استخدام أي مما يلي:
      • IKeymasterDevice 3.0،
      • IKeymasterDevice 4.0،
      • IKeymasterDevice 4.1،
      • الإصدار 1 من IKeyMintDevice،
      • الإصدار 2 من IKeyMintDevice.

  • 9.11.1. شاشة القفل الآمنة والمصادقة والأجهزة الافتراضية:

    عرض النسخة السابقة

    • [C-8-3] يجب ألا تعرض هذه المفاتيح واجهة برمجة تطبيقات تستخدمها تطبيقات الجهات الخارجية لتغيير حالة القفل.

    عرض النسخة السابقة

    • [C-12-4] يجب الاتصال بالرقم TrustManagerService.revokeTrust()
      • بعد مرور 24 ساعة كحد أقصى من منح الثقة، أو
      • بعد مرور فترة عدم النشاط لمدة 8 ساعات
      • إذا لم تكن عمليات التنفيذ تستخدم التشفير الآمن والدقيق في نطاق زمني محدّد في [C-12-5]، عند فقدان الاتصال الأساسي بالجهاز الفعلي القريب.
    • [C-12-5] في عمليات التنفيذ التي تعتمد على نطاقات آمنة ودقيقة لتلبية متطلبات [C-12-4]، يجب استخدام أحد الحلول التالية:
      • عمليات التنفيذ باستخدام النطاق الفائق العرض (UWB):
      • عمليات التنفيذ التي تم إجراؤها باستخدام شبكة Wi-Fi العالمية للوعي بشبكة Wi-Fi (NAN):
        • يجب أن تستوفي متطلبات الدقة الواردة في 2.2.1 [7.4.2.5/H-SR-1]، وأن تستخدم معدل نقل بيانات بتردد 160 ميغاهرتز (أو أعلى)، واتّبِع خطوات إعداد القياس المحدّدة في معايرة تواجد الأفراد في المنزل.
        • يجب استخدام "الدعم الطويل الأمد (LTF) الآمن" على النحو المحدّد في IEEE 802.11az.

8 أبريل 2024

2. أنواع الأجهزة

  • 2.2.1. الأجهزة:

    عرض النسخة السابقة

    بدء متطلبات جديدة

    إذا كانت عمليات تنفيذ الأجهزة المحمولة تشير إلى FEATURE_BLUETOOTH_LE، سيكون:

    • [7.4.3/H-1-3] يجب أن يقيس ويعادل إزاحة Rx للتأكد من أن متوسط BLE RSSI يبلغ -50 ديسيبل ملي واط +/-15 ديسيبل على مسافة 1 متر من جهاز مرجعي يتم إرساله في ADVERTISE_TX_POWER_HIGH.
    • [7.4.3/H-1-4] يجب أن يقيس ويعادل معادلة Tx للتأكد من أن القيمة المتوسطة لخلاصة RSSI بتقنية BLE-50 ديسيبل +/-15 ديسيبل عند المسح الضوئي من جهاز مرجعي موضوع على مسافة 1 متر ويجري عملية الإرسال في ADVERTISE_TX_POWER_HIGH.

  • 2.2.5. نموذج الأمان:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تتوافق مع System API HotwordDetectionService أو آلية أخرى لرصد الكلمة المفتاح بدون مؤشر الوصول إلى الميكروفون، سيتم إجراء ما يلي:

    • [9.8/H-1-6] يجب عدم السماح بنقل أكثر من 100 بايت من البيانات خارج خدمة رصد الكلمات المفتاح في كل نتيجة كلمة تفعيل ناجحة باستثناء البيانات الصوتية التي يتم تمريرها من خلال HotwordAudioStream.

    عرض النسخة السابقة

    غيِّر [9.8/H-1-13] إلى:

    • [9.8/H-SR-3] يُوصى بشدة بإعادة تشغيل العملية التي تستضيف خدمة اكتشاف الكلمة المفتاح مرة واحدة على الأقل كل ساعة أو كل 30 حدثًا لتشغيل الجهاز، أيهما يحدث أولاً.

    عرض النسخة السابقة

    المتطلبات التي تمت إزالتها [9.8.2/H-4-3]، [9.8.2/H-4-4]، [9.8.2/H-5-3].

  • 2.2.7.2. الكاميرا:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تعرض android.os.Build.VERSION_CODES.U لـ android.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS، سيتم عندها:

    • يجب أن تكون السمة [7.5/H-1-3] متوافقة مع السمة android.info.supportedHardwareLevel كـ FULL أو أفضل مع الكاميرا الأساسية الخلفية وLIMITED أو بشكل أفضل للكاميرا الأمامية الأساسية.

  • 2.3.2 الوسائط المتعددة:

    عرض النسخة السابقة

    إذا لم تكن تطبيقات أجهزة التلفزيون مزوّدة بشاشة مدمجة، ولكنّها تتوافق بدلاً من ذلك مع شاشة خارجية متصلة عبر HDMI، سيتم إجراء ما يلي:

    • [5.8/T-0-1] يجب ضبط وضع إخراج HDMI على أعلى دقة لتنسيق البكسل الذي تم اختياره والذي يعمل مع معدّل تحديث يبلغ 50 هرتز أو 60 هرتز للشاشة الخارجية، استنادًا إلى معدّل إعادة تحميل الفيديو للمنطقة التي يتم بيع الجهاز فيها. يجب ضبط وضع إخراج HDMI لاختيار الحد الأقصى لدرجة الدقة التي يمكن استخدامها مع معدّل إعادة التحميل بتردد 50 هرتز أو 60 هرتز.

‫3. البرامج

‫5. التوافق مع الوسائط المتعددة

  • 5.3.8. Dolby Vision:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تشير إلى توافقها مع برنامج فك ترميز Dolby Vision من خلال HDR_TYPE_DOLBY_VISION، سينفّذ ما يلي:

    • [C-1-3] يجب أن يضبط رقم تعريف المسار للطبقات الأساسية المتوافقة مع الأنظمة القديمة (في حال توفرها) ليكون معرّف المسار لطبقة Dolby Vision المدمجة.

‫7. توافُق الأجهزة

  • 7.1.1.1. حجم الشاشة وشكلها:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تتوافق مع الشاشات التي يمكنها ضبط حجم UI_MODE_TYPE_NORMAL وتستخدم شاشات عرض فعلية بزوايا مستديرة لعرض هذه الشاشات، سيتم إجراء ما يلي:

    • [C-1-1] يجب أن يضمن استيفاء واحد على الأقل من المتطلبات التالية لكل عرض:
      • عندما يكون هناك 15وحدة بكسل مستقلة الكثافة × 1518 بكسل مستقل الكثافة في كل زاوية من جوانب الشاشة المنطقية، يظهر على الشاشة وحدة بكسل واحدة على الأقل من كل مربّع.

  • 7.4.3. البلوتوث:

    عرض النسخة السابقة

    تمت إعادة المتطلبات التالية:

    إذا كانت عمليات تنفيذ الأجهزة تشير إلى FEATURE_BLUETOOTH_LE، سيتم ما يلي:

    • [C-SR-2] يُنصح بشدة بقياس قيمة معادلة الصوت Rx وتعويضها للتأكد من أنّ القيمة المتوسطة لمعيار BLE RSSI تبلغ -60 ديسيبل ملي واط +/-10 ديسيبل على مسافة 1 متر من جهاز مرجعي ينقل البيانات في ADVERTISE_TX_POWER_HIGH، حيث تكون الأجهزة موجَّهة بحيث تكون على "مستويات متوازية" مع توجيه الشاشات نفسها.

    • [C-SR-3] يُنصح بشدة بقياس معادلة Tx وتعويضها لضمان أن يبلغ متوسط قيمة BLE RSSI -60 ديسيبل ملي واط +/-10 ديسيبل عند المسح الضوئي من جهاز مرجعي يتم نقله على مسافة 1 متر ويجري إرساله في "ADVERTISE_TX_POWER_HIGH"، حيث تكون الأجهزة موجَّهة بحيث تكون في "الاتجاه نفسه" للشاشات المواجهة لها

    عرض النسخة السابقة

    المتطلبات التي تم نقلها [C-10-3] و[C-10-4] إلى 2.2.1. الأجهزة:

    • [C-10-3] يجب قياس معادلة Rx وتعويضها لضمان أن تبلغ القيمة المتوسطة لخلاصة RSSI -55 ديسيبل ملي واط +/-10 ديسيبل على مسافة 1 متر من جهاز مرجعي يتم نقله في ADVERTISE_TX_POWER_HIGH.
    • [C-10-4] يجب قياس الإزاحة Tx وتعويضها لضمان أن تبلغ القيمة المتوسطة لخلاصة RSSI -55 ديسيبل ملي واط +/-10 ديسيبل عند إجراء المسح الضوئي من جهاز مرجعي موضوع على مسافة متر واحد ويجري الإرسال في ADVERTISE_TX_POWER_HIGH.

20 تشرين الثاني (نوفمبر) 2023

2. أنواع الأجهزة

  • 2.2.1. الأجهزة:

    عرض النسخة السابقة

    في حال كانت عمليات تنفيذ الأجهزة المحمولة تشير إلى توافقها مع أيّ واجهة ABI 64 بت (مع أو بدون أيّ واجهة تطبيق ثنائية (ABI) 32 بت):

  • 2.2.7.2. الكاميرا:

    عرض النسخة السابقة

    • [7.5/H-1-13] يجب أن يتوافق مع إمكانات LOGICAL_MULTI_CAMERA للكاميرا الخلفية الأساسية في حال توفُّر أكثر من كاميرا خلفية واحدة مزوّدة بنموذج أحمر أخضر أزرق.

  • 2.3.2 الوسائط المتعددة:

    عرض النسخة السابقة

    • [5.8/T-0-1] يجب ضبط وضع إخراج HDMI على أعلى دقة لتنسيق SDR أو تنسيق HDR المحدّد الذي يعمل مع معدل التحديث 50 هرتز أو 60 هرتز للشاشة الخارجية.

      يجب ضبط وضع إخراج HDMI لاختيار الحد الأقصى لدرجة الدقة التي يمكن استخدامها مع معدّل إعادة التحميل على 50 هرتز أو 60 هرتز.

  • 2.4.5. نموذج الأمان:

    عرض النسخة السابقة

    • [9/W-0-1] يجب أن تعلن عن android.hardware.security.model.compatible feature.

‫6. توافق الخيارات وأدوات المطوّرين

  • 6.1. أدوات المطوّرين:

    عرض النسخة السابقة

    • [C-0-12] يجب كتابة LMK_KILL_OCCURRED_FIELD_NUMBER Atom إلى

    عرض النسخة السابقة

    • [C-0-13] يجب تنفيذ أمر Shell dumpsys gpu --gpuwork لعرض

‫9. توافق نموذج الأمان

  • 9.7. ميزات الأمان:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تستخدم نواة Linux قادرة على دعم SELinux، فإنها:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تستخدم نواة بخلاف Linux أو Linux بدون SELinux، فإنها:

‫4 أكتوبر 2023

2. أنواع الأجهزة

  • 2.2. متطلبات حمل الجهاز باليد:

    عرض النسخة السابقة

    يتم تصنيف عمليات تنفيذ أجهزة Android على أنّها "أجهزة محمولة باليد" إذا استوفت جميع المعايير التالية:

    • أن يكون حجم الشاشة القطري 4 بوصة 3.3 بوصة (أو 2.5 بوصة لعمليات تنفيذ الأجهزة التي يتم شحنها إلى المستوى 29 من واجهة برمجة التطبيقات أو الإصدارات السابقة) إلى 8 بوصة.

    بدء متطلبات جديدة

    • أن تحتوي على واجهة إدخال على شاشة تعمل باللمس

  • 2.2.1. الأجهزة:

    عرض النسخة السابقة

    عمليات تنفيذ الأجهزة المحمولة:

    • يجب أن يتضمّن [7.1.1.1/H-0-1] شاشة واحدة على الأقل متوافقة مع نظام التشغيل Android وتفي بجميع المتطلبات الموضّحة في هذا المستند. يجب أن يبلغ قياس ارتفاع الشاشة 2.2 بوصة على الأقل عند الحافة القصيرة و3.4 بوصة عند الحافة الطويلة.

    إذا كانت عمليات تنفيذ الأجهزة المحمولة تتيح تدوير شاشة البرامج، سيتم إجراء ما يلي:

    • [7.1.1.1/H-1-1]* يجب أن تجعل الشاشة المنطقية المتاحة للتطبيقات التابعة للجهات الخارجية بمسافة لا تقل عن 2 بوصة على الحواف القصيرة و2.7 بوصة على الحواف الطويلة. وقد تُستثنى من هذا الشرط الأجهزة التي تم شحنها إلى المستوى 29 من واجهة برمجة تطبيقات Android أو مستوى أقدم.

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد لا تدعم تدوير شاشة البرنامج، فإنها:

    • [7.1.1.1/H-2-1]* يجب أن تجعل الشاشة المنطقية المتاحة للتطبيقات التابعة للجهات الخارجية على الأقل 2.7 بوصة على الحواف القصيرة. وقد تُستثنى من هذا الشرط الأجهزة التي تم شحنها إلى المستوى 29 من واجهة برمجة تطبيقات Android أو مستوى أقدم.

    بدء متطلبات جديدة

    • [7.1.1.1/H-0-3]* يجب أن يعيّن كل شاشة UI_MODE_NORMAL متاحة للتطبيقات التابعة لجهات خارجية في منطقة عرض فعلية خالية من العوائق لا يقل حجمها عن 2.2 بوصة على الحافة القصيرة و3.4 بوصة على الحافة الطويلة.

    • [7.1.1.3/H-0-1]* يجب ضبط قيمة DENSITY_DEVICE_STABLE لتكون 92% أو أكبر من الكثافة الفعلية الفعلية للشاشة المقابلة.

    إذا كانت عمليات تنفيذ الأجهزة المحمولة تشير إلى android.hardware.audio.output وandroid.hardware.microphone، سيكون:

    • يجب أن تتضمن [5.6/H-1-1] وقت استجابة متواصل للرحلة ذهابًا وإيابًا يبلغ 300 مللي ثانية أو أقل من 5 قياسات، مع متوسط انحراف مطلق أقل من 30 ملي ثانية، عبر مسارات البيانات التالية: "مكبّر الصوت إلى الميكروفون"، محول استرجاع استرجاع 3.5 ملم (إذا كان متوافقًا)

    • [5.6/H-1-2] يجب أن يكون وقت استجابة "النقر للنغمة" في المتوسط 300 مللي ثانية أو أقل من 5 قياسات على الأقل عبر مسار بيانات المتحدث إلى الميكروفون.

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تتضمن مشغّلاً حسّيًا واحدًا على الأقل:

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تتضمّن مشغِّل رنان خطّي واحدًا على الأقل للأغراض العامة 7.10 ، يجب أن تكون:

    • [7.10/H] يجب أن يكون موضع مشغِّل شبكة الجوّال بالقرب من مكان إمساك الجهاز أو لمسه باليد في العادة.

    • يجب تحريك [7.10/H] للمشغّل باللمس على المحور السيني (الأيمن الأيسر) للاتجاه العمودي الطبيعي في الجهاز.

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تستخدم مشغّلًا حسّيًا للغرض العام، وهو مشغّل رنان خطي على المحور س (LRA):

    • [7.10/H] يجب أن يكون التردد رنانة لـ LRA على المحور س أقل من 200 هرتز.

  • 2.2.2. الوسائط المتعددة:

    عرض النسخة السابقة

    يجب أن تتوافق عمليات تنفيذ الأجهزة المحمولة باليد مع تنسيقات ترميز الفيديو التالية وإتاحتها على التطبيقات التابعة لجهات خارجية:

    • [5.2/H-0-3] AV1

    يجب أن تتيح عمليات تنفيذ الأجهزة المحمولة استخدام تنسيقات الفيديو التالية لفك ترميز الفيديوهات وإتاحتها للتطبيقات التابعة لجهات خارجية:

    • [5.3/H-0-6] AV1

  • 2.2.3. البرامج:

    عرض النسخة السابقة

    إذا غيَّرت عمليات تنفيذ الأجهزة، بما في ذلك مفتاح التنقّل الحديث بين الوظائف كما هو موضَّح في القسم 7.2.3، الواجهة، سيحدث ما يلي:

    • [3.8.3/H-1-1] يجب أن ينفذ سلوك تثبيت الشاشة ويوفر للمستخدم قائمة إعدادات لتبديل الميزة.

    في حال كانت عمليات تنفيذ الأجهزة المحمولة باليد تسمح بواجهات برمجة تطبيقات ControlsProviderService وControl وتسمح لتطبيقات الجهات الخارجية بنشر عناصر التحكم في الأجهزة، يجب عندها:

    • [3.8.16/H-1-6] يجب أن تؤدي عمليات تنفيذ الأجهزة إلى تلبية متطلبات المستخدم بدقة على النحو التالي:
      • إذا كان الجهاز قد ضبط config_supportsMultiWindow=true وأعلن التطبيق عن البيانات الوصفية META_DATA_PANEL_ACTIVITY في بيان ControlsProviderService، بما في ذلك ComponentName لنشاط صالح (على النحو المحدّد في واجهة برمجة التطبيقات)، يجب أن يضمِّن التطبيق النشاط المذكور ضمن قدرة المستخدم هذه.
      • إذا لم يفصح التطبيق عن البيانات الوصفية META_DATA_PANEL_ACTIVITY، يجب أن يعرض الحقول المحدّدة على النحو الذي توفّره واجهة برمجة التطبيقات ControlsProviderService بالإضافة إلى أي حقول محدّدة توفّرها واجهات برمجة تطبيقات Control.
    • [3.8.16/H-1-7] إذا كان التطبيق يعرض البيانات الوصفية META_DATA_PANEL_ACTIVITY، يجب أن يجتاز قيمة الإعداد المحددة في [3.8.16/H-1-5] باستخدام EXTRA_LOCKSCREEN_ALLOW_TRIVIAL_CONTROLS عند تشغيل النشاط المضمّن.

    إذا كانت تطبيقات الأجهزة تسمح للمستخدمين بإجراء اتصالات من أي نوع،

  • 2.2.4. الأداء والقوة:

    عرض النسخة السابقة

    عمليات تنفيذ الأجهزة المحمولة:

    • يجب أن توفّر [8.5/H-0-1] تفاعل المستخدم في قائمة "الإعدادات" للاطّلاع على جميع التطبيقات التي تستخدم الخدمات التي تعمل في المقدّمة النشطة أو المهام التي بدأها المستخدم، بما في ذلك مدة كل خدمة من هذه الخدمات منذ بدئها على النحو الموضّح في مستند حزمة تطوير البرامج (SDK). وإمكانية إيقاف أحد التطبيقات التي يشغّل الخدمة التي تعمل في المقدّمة{/0 على التطبيقات التي تستخدم الخدمات التي تعمل في المقدّمة للاطّلاع على جميع التطبيقات التي تستخدم الخدمات التي تعمل في المقدّمة.{

    • [8.5/H-0-2]يجب أن توفر للمستخدم إمكانية إيقاف تطبيق يشغّل خدمة تعمل في المقدّمة أو وظيفة يبدأها المستخدم.

  • 2.2.5. نموذج الأمان:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تشير إلى توافقها مع android.hardware.telephony، سيحدث ما يلي:

    • [9.5/H-1-1] يجب ألا يتم ضبط UserManager.isHeadlessSystemUserMode على true.

    إذا كانت عمليات تنفيذ الأجهزة تتضمّن شاشة قفل آمنة وتتضمن وكيلاً موثوقًا واحدًا أو أكثر يستخدم TrustAgentService System API، سينفّذ ما يلي:

    • [9.11.1/H-1-1] يجب أن يطلب المستخدم من المستخدم تنفيذ إحدى طرق المصادقة الأساسية المقترَحة (مثل رقم التعريف الشخصي أو النقش أو كلمة المرور) أكثر من مرة واحدة كل 72 ساعة.

    إذا تم ضبط عمليات تنفيذ الأجهزة المحمولة باليد UserManager.isHeadlessSystemUserMode على true،

    • [9.5/H-4-1] يجب ألا يتيح استخدام رموز eUICC أو لشرائح eSIM التي تتوفر فيها إمكانية الاتصال.
    • [9.5/H-4-2] يجب ألا تعلن عن دعمها لـ android.hardware.telephony.

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تتوافق مع System API HotwordDetectionService أو آلية أخرى لرصد الكلمات المفتاح بدون مؤشر الوصول إلى الميكروفون، سيتم إجراء ما يلي:

    • [9.8/H-1-1] يجب التأكّد من أنّ خدمة الكشف عن الكلمة المفتاح لا يمكنها إلا نقل البيانات إلى النظام أو ContentCaptureService أو إلى خدمة التعرّف على الكلام على الجهاز التي أنشأها "SpeechRecognizer#createOnDeviceSpeechRecognizer()".
    • [9.8/H-1-6] يجب ألا يُسمح بإرسال أكثر من 100 بايت من البيانات (باستثناء البث الصوتي) من خدمة رصد الكلمات المفتاح في كل نتيجة ناجحة لكلمة تفعيل الإجراء.

    • [9.8/H-1-15] يجب التأكد من أن عمليات البث الصوتي المقدمة في نتائج الكلمات المفتاح الناجحة يتم نقلها في اتجاه واحد من خدمة اكتشاف الكلمة المفتاح إلى خدمة التفاعل الصوتي.

    إذا كانت عمليات تنفيذ الجهاز تتضمّن تطبيقًا يستخدم System API HotwordDetectionService أو آلية مشابهة لرصد الكلمة المفتاح بدون مؤشر استخدام الميكروفون، سينفّذ التطبيق الإجراءات التالية:

    • [9.8/H-2-3] يجب ألا يتم النقل من خدمة الكشف عن الكلمة المفتاح أو البيانات الصوتية أو البيانات التي يمكن استخدامها لإعادة إنشاء الصوت (كليًا أو جزئيًا) أو المحتوى الصوتي غير المرتبط بالكلمة المهمة نفسها، باستثناء ContentCaptureService أو خدمة التعرّف على الكلام على الجهاز.

    إذا كانت عمليّات تنفيذ الأجهزة المحمولة تتوافق مع System API VisualQueryDetectionService أو آلية أخرى لرصد الطلبات بدون الإشارة إلى الوصول إلى الميكروفون و/أو الكاميرا، سيتم إجراء ما يلي:

    • [9.8/H-3-1] يجب التأكّد من أنّ خدمة رصد الطلبات يمكنها نقل البيانات فقط إلى النظام أو إلى ContentCaptureService أو إلى خدمة التعرّف على الكلام على الجهاز (تم إنشاؤها من قِبل SpeechRecognizer#createOnDeviceSpeechRecognizer()).
    • [9.8/H-3-2] يجب عدم السماح بنقل أي معلومات صوت أو فيديو خارج VisualQueryDetectionService، باستثناء ContentCaptureService أو خدمة التعرّف على الكلام على الجهاز فقط.
    • [9.8/H-3-3] يجب عرض إشعار للمستخدم في واجهة مستخدم النظام عندما يرصد الجهاز نيّة المستخدم في التفاعل مع تطبيق "مساعد Google" (مثلاً من خلال رصد حضور المستخدم عبر الكاميرا).
    • [9.8/H-3-4] يجب عرض مؤشر الميكروفون وعرض طلب بحث المستخدم الذي تم اكتشافه في واجهة المستخدم بعد اكتشاف طلب بحث المستخدم مباشرةً.
    • [9.8/H-3-5] يجب ألا يسمح لتطبيق يمكن للمستخدم تثبيته بتوفير خدمة رصد الطلبات المرئية.

  • 2.2.7.1. الوسائط:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تعرض android.os.Build.VERSION_CODES.T للجهاز android.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS، سيتم عندها:

    بدء متطلبات جديدة

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تعرض android.os.Build.VERSION_CODES.U لـ android.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS، سيتم عندها:

    • [5.1/H-1-1] يجب الإعلان عن الحد الأقصى لعدد جلسات برنامج فك ترميز الفيديوهات على الأجهزة التي يمكن تشغيلها بالتزامن في أي مجموعة برامج ترميز من خلال طريقتَي CodecCapabilities.getMaxSupportedInstances() وVideoCapabilities.getSupportedPerformancePoints().
    • [5.1/H-1-2] يجب أن يتوفر في 6 نسخ من جلسات برنامج فك ترميز الفيديوهات للأجهزة بنظام 8 بت (SDR) (AVC أو HEVC أو VP9 أو AV1 أو الإصدارات الأحدث) في أي مجموعة برامج ترميز يتم تشغيلها بالتزامن مع 3 جلسات بدقة 1080p بسرعة 30 لقطة في الثانية و3 جلسات بدقة 4K و31 لقطة في الثانية. لا يجب أن تتوافق برامج ترميز AV1 إلا مع درجة الدقة 1080p، ولكن لا تزال مطلوبة للتوافق مع 6 حالات بدقة 1080p30fps.
    • [5.1/H-1-3] يجب الإعلان عن الحد الأقصى لعدد جلسات برنامج ترميز الفيديو على الأجهزة التي يمكن تشغيلها بالتزامن في أي مجموعة برامج ترميز عبر الطريقتَين CodecCapabilities.getMaxSupportedInstances() وVideoCapabilities.getSupportedPerformancePoints().
    • [5.1/H-1-4] يجب أن يتوفّر في 6 نسخ من جلسات برنامج ترميز فيديو على الأجهزة بنظام 8 بت (SDR) (AVC أو HEVC أو VP9 أو AV1 أو أحدث) في أيّ مجموعة برامج ترميز يتم تشغيلها بالتزامن مع 4 جلسات بدرجة دقة 1080p بسرعة 30 لقطة في الثانية وجلستَين بدقة 4k بدقة 31 لقطة في الثانية، ما لم يتم ذلك لا يجب أن تتوافق برامج ترميز AV1 إلا مع درجة الدقة 1080p، ولكن لا تزال مطلوبة للتوافق مع 6 حالات بدقة 1080p30fps.
    • [5.1/H-1-5] يجب الإعلان عن الحد الأقصى لعدد جلسات برنامج ترميز الفيديو وفك الترميز على الجهاز التي يمكن تشغيلها بالتزامن في أي تركيبة من برامج الترميز عبر طريقتَي CodecCapabilities.getMaxSupportedInstances() وVideoCapabilities.getSupportedPerformancePoints().
    • [5.1/H-1-6] يجب أن يتوافق مع 6 حالات من برنامج فك ترميز الفيديوهات بأجهزة 8 بت (SDR)، وجلسات ترميز الفيديوهات بالأجهزة (AVC أو HEVC أو VP9 أو AV1 أو أحدث) في أي مجموعة من برامج الترميز التي يتم تشغيلها بالتزامن مع 3 جلسات بدقة 4K بسرعة 30 لقطة في الثانية (AV1)، وعدد الجلسات من كل 8 جلسات كحدّ أقصى. لا يجب أن تتوافق برامج ترميز AV1 إلا مع درجة الدقة 1080p، ولكن لا تزال مطلوبة للتوافق مع 6 حالات بدقة 1080p30fps.
    • [5.1/H-1-19] يجب أن يتوافق مع 3 نسخ من برنامج فك ترميز الفيديوهات بأجهزة 10 بت (HDR0) وجلسات ترميز الفيديوهات على الأجهزة (AVC أو HEVC أو VP9 أو AV1 أو أحدث) في أي مجموعة من برامج الترميز يتم تشغيلها بالتزامن بدقة 4K@30 لقطة في الثانية (AV10) ويكون 1 من الأسطح بتنسيق GL10 كحدّ أقصى في الجلسة. لا يلزم إنشاء بيانات وصفية بتنسيق HDR بواسطة برنامج الترميز في حال الترميز من سطح GL. لا يجب أن تكون جلسات ترميز AV1 إلا إذا كانت متوافقة مع دقة 1080p حتى إذا كان هذا الشرط مطلوبًا.
    • [5.1/H-1-7] يجب أن يبلغ وقت استجابة إعداد برنامج الترميز 40 ملي ثانية أو أقل لجلسة ترميز الفيديو بدقة 1080p أو أقل لجميع برامج ترميز الفيديو للأجهزة عندما تكون قيد التحميل. يُعرَّف التحميل هنا على أنّه جلسة متزامنة لتحويل ترميز الفيديو بين 1080p و720p باستخدام برامج ترميز الفيديو على الأجهزة بالإضافة إلى إعداد تسجيل الصوت والفيديو بدقة 1080p. بالنسبة إلى برنامج ترميز Dolby Vision، يجب أن يبلغ وقت استجابة إعداد برنامج الترميز 50 ملي ثانية أو أقل.
    • [5.1/H-1-8] يجب أن يبلغ وقت استجابة إعداد برنامج الترميز 30 ملي ثانية أو أقل لجلسة ترميز صوتي بمعدل 128 كيلوبت في الثانية أو بمعدل نقل بيانات أقل لجميع برامج ترميز الصوت عندما تكون قيد التحميل. يُعرَّف التحميل هنا على أنّه جلسة متزامنة لتحويل ترميز الفيديو بين 1080p و720p باستخدام برامج ترميز الفيديو على الأجهزة بالإضافة إلى إعداد تسجيل الصوت والفيديو بدقة 1080p.
    • [5.1/H-1-9] يجب أن يتوفر في نسختَين لجلسات فك ترميز الفيديوهات على الأجهزة الآمنة (AVC أو HEVC أو VP9 أو AV1 أو الإصدارات الأحدث) في أيّ مجموعة برامج ترميز يتم تشغيلها بالدقة 4k بسرعة 30 لقطة في الثانية (باستثناء AV1) لمحتوى بتنسيق 8 بت (SDR) ومحتوى بتقنية HDR بمعدّل 10 بت. لا يجب أن تكون جلسات ترميز AV1 إلا إذا كانت متوافقة مع دقة 1080p حتى إذا كان هذا الشرط مطلوبًا.
    • [5.1/H-1-10] يجب أن تتوافق مع 3 جلسات من جلسات فك ترميز فيديو الأجهزة غير الآمنة AV1-0 التي يمكن فيها إجراء جلسة فك ترميز فيديو AV1/بتقنية AV1، مع نسخة واحدة من جلسة فك ترميز فيديو الأجهزة الآمنة (في إجمالي 4 مثيلات) (AVC أو HEVC أو VP9 أو AV1 أو أحدث) في أي مجموعة من برامج الترميز يتم تشغيلها بالتزامن مع 3 جلسات بدقة 4K بدقة 30 لقطة في الثانية) لا يجب أن تكون جلسات ترميز AV1 إلا إذا كانت متوافقة مع دقة 1080p حتى إذا كان هذا الشرط مطلوبًا.
    • [5.1/H-1-11] يجب أن يتوافق مع برنامج فك ترميز آمن لكل برنامج فك ترميز AVC أو HEVC أو VP9 أو AV1 على الجهاز.
    • [5.1/H-1-12] يجب أن يبلغ وقت استجابة إعداد برنامج الترميز 40 ملي ثانية أو أقل لجلسة فك ترميز الفيديوهات بدقة 1080p أو أقل لجميع برامج فك ترميز الفيديوهات على الأجهزة عندما تكون قيد التحميل. يُعرف التحميل هنا على أنه جلسة متزامنة لتحويل ترميز الفيديو بين 1080p و720p باستخدام برامج ترميز الفيديو للأجهزة بالإضافة إلى إعداد تشغيل الصوت والفيديو بدقة 1080p. بالنسبة إلى برنامج ترميز Dolby Vision، يجب أن يبلغ وقت استجابة إعداد برنامج الترميز 50 ملي ثانية أو أقل.
    • [5.1/H-1-13] يجب أن يبلغ وقت استجابة إعداد برنامج الترميز 30 ملي ثانية أو أقل لجلسة فك ترميز الصوت بمعدل 128 كيلوبت في الثانية أو أقل لجميع برامج فك ترميز الصوت عندما تكون قيد التحميل. يُعرَّف التحميل هنا على أنّه جلسة متزامنة لتحويل ترميز الفيديو بين 1080p و720p باستخدام برامج ترميز الفيديو على الأجهزة بالإضافة إلى إعداد تشغيل الصوت والفيديو بدقة 1080p.
    • [5.1/H-1-14] يجب أن يتوافق مع برنامج فك ترميز الأجهزة AV1 الرئيسي 10 والمستوى 4.1 وتحبب الأفلام.
    • يجب أن يحتوي [5.1/H-1-15] على برنامج فك ترميز فيديو واحد على الأقل يتوافق مع 4K60.
    • يجب أن يتوفّر في الأجهزة [5.1/H-1-16] برنامج ترميز فيديو واحد على الأقل متوافق مع دقة 4K60.
    • [5.3/H-1-1] يجب ألا يتم إسقاط أكثر من إطار واحد خلال 10 ثوانٍ (أي أقل من 0.167 في المئة من انخفاض اللقطات) في جلسة فيديو بسرعة 4K بمعدل 60 لقطة في الثانية أثناء التحميل.
    • [5.3/H-1-2] يجب ألا يتم إسقاط أكثر من إطار واحد خلال 10 ثوانٍ أثناء تغيير درجة دقة الفيديو في جلسة فيديو بسرعة 60 لقطة في الثانية أثناء التحميل لجلسة 4K.
    • [5.6/H-1-1] يجب أن يبلغ وقت استجابة النقر للنغمة 80 مللي ثانية أو أقل باستخدام اختبار النقر للنغمات في CTS Verifier.
    • [5.6/H-1-2] يجب أن يبلغ وقت استجابة الصوت ذهابًا وإيابًا 80 مللي ثانية أو أقل عبر مسار بيانات متوافق واحد على الأقل.
    • [5.6/H-1-3] يجب أن يكون الصوت متوافقًا مع صوت بمقدار >=24 بت لإخراج صوت استيريو يزيد عن مقابس صوت استيريو بطول 3.5 ملم في حال توفّرها ومع صوت USB إذا كان ذلك متاحًا في مسار البيانات بالكامل لتوفير وقت استجابة سريع وإعدادات بث. لإعداد وقت الاستجابة البطيء، يجب أن يستخدم التطبيق AAudio في وضع معاودة الاتصال بوقت استجابة سريع. بالنسبة إلى إعدادات البث، يجب أن يستخدم التطبيق مقطعًا صوتيًا صوتيًا Java. في كل من إعدادات البث ووقت الاستجابة السريع، يجب أن يقبل حوض إخراج HAL إما AUDIO_FORMAT_PCM_24_BIT أو AUDIO_FORMAT_PCM_24_BIT_PACKED أو AUDIO_FORMAT_PCM_32_BIT أو AUDIO_FORMAT_PCM_FLOAT لتنسيق الإخراج المستهدف.
    • [5.6/H-1-4] يجب أن يتوافق مع أكثر من = 4 أجهزة صوت USB (تُستخدم هذا بواسطة وحدات التحكم في DJ لمعاينة الأغاني.)
    • [5.6/H-1-5] يجب أن تتوافق مع أجهزة MIDI المتوافقة مع الفئة وأن تشير إلى علامة ميزة MIDI.
    • [5.6/H-1-9] يجب أن يتوفر فيه 12 قناة مختلطة على الأقل. ويشير ذلك إلى إمكانية فتح مقطع صوتي باستخدام قناع قناة 7.1.4 وترتيب كل القنوات بشكل صحيح أو خفضها إلى صوت استيريو.
    • [5.6/H-SR] يُنصَح بشدة بإتاحة 24 قناة عند دمج القنوات مع إتاحة استخدام ما لا يقل عن أقنعة قنوات 9.1.6 و22.2.
    • [5.7/H-1-2] يجب أن يتوافق مع MediaDrm.SECURITY_LEVEL_HW_SECURE_ALL مع إمكانات فك تشفير المحتوى أدناه.
    الحد الأدنى لحجم العينة 4 مبيبايت
    الحد الأدنى لعدد العيّنات الفرعية: H264 أو HEVC 32
    الحد الأدنى لعدد العيّنات الفرعية - VP9 9
    الحدّ الأدنى لعدد العيّنات الفرعية: AV1 288
    الحد الأدنى لحجم ذاكرة التخزين المؤقت للعينة الفرعية 1 مبيبايت
    الحد الأدنى لحجم المخزن المؤقت العام للعملات المشفّرة 500 كيبيبايت
    الحد الأدنى لعدد الجلسات المتزامنة 30
    الحد الأدنى لعدد المفاتيح في كل جلسة 20
    الحد الأدنى لإجمالي عدد المفاتيح (جميع الجلسات) 80
    الحد الأدنى لإجمالي عدد مفاتيح DRM (جميع الجلسات) 6
    حجم الرسالة 16 كيبيبايت
    اللقطات غير المشفّرة في الثانية 60 لقطة في الثانية
    • يجب أن يتوفّر في [5.1/H-1-17] برنامج فك ترميز صور جهاز واحد على الأقل يتوافق مع الملف التعريفي AVIF.
    • [5.1/H-1-18] يجب أن يكون برنامج الترميز AV1 متوافقًا مع ترميز الفيديوهات بدقة تصل إلى 480p بمعدّل 30 لقطة في الثانية و1 ميغابت في الثانية.
    • [5.12/H-1-1] يجب [5.12/H-SR] يُنصح بشدة لإتاحة ميزة Feature_HdrEditing على جميع أجهزة الترميز AV1 وHEVC المتوفرة على الجهاز.
    • [5.12/H-1-2] يجب أن يتوافق مع تنسيق الألوان RGBA_1010102 لجميع برامج الترميز AV1 وHEVC على الجهاز.
    • [5.12/H-1-3] يجب أن تعلن عن دعم للإضافة EXT_YUV_target إلى نموذج من زخارف YUV بتنسيق 8 و10 بت.
    • يجب أن يتضمّن [7.1.4/H-1-1] 6 تركيبات على الأقل من الأجهزة في وحدة معالجة البيانات (DPU) في أداة إنشاء الأجهزة (HWC)، على أن يكون اثنين منها على الأقل قادران على عرض محتوى فيديو بـ 10 بت.

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تعرض android.os.Build.VERSION_CODES.U لـ android.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS وكانت تتوافق مع برنامج ترميز AVC أو HEVC، سيتم تطبيق ما يلي:

    • يجب أن يفي [5.2/H-2-1] بالحد الأدنى لهدف الجودة المحدد في منحنيات تشويه معدّل ترميز الفيديو لبرامج ترميز AVC وHEVC على الأجهزة، على النحو المحدد في المستندات القادمة.

  • 2.2.7.2. الكاميرا:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تعرض android.os.Build.VERSION_CODES.U لـ android.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS، سيتم عندها:

    • [7.5/H-1-1] يجب أن تتوفر كاميرا خلفية أساسية بدقة لا تقل عن 12 ميغا بكسل تتيح التقاط الفيديو بسرعة 4k بسرعة 30 لقطة في الثانية. الكاميرا الخلفية الأساسية هي الكاميرا الخلفية التي تتضمّن معرّفًا أدنى للكاميرا.
    • [7.5/H-1-2] يجب أن تتوفر كاميرا أمامية أساسية لا تقل دقتها عن 6 ميغابكسل وإمكانية التقاط فيديو بدقة 1080p بسرعة 30 لقطة في الثانية. الكاميرا الأمامية الأساسية هي الكاميرا الأمامية التي لديها معرف أدنى للكاميرا.
    • [7.5/H-1-3] يجب أن يتوافق مع الخاصية android.info.supportedHardwareLevel بشكل كامل أو أفضل لكلتا الكاميرتين الأساسيتين.
    • [7.5/H-1-4] يجب أن يتوافق مع CameraMetadata.SENSOR_INFO_TIMESTAMP_SOURCE_REALTIME لكلتا الكاميرتين الأساسيتين.
    • في [7.5/H-1-5] يجب أن يكون وقت استجابة الالتقاط بتنسيق JPEG في الكاميرا2 < 1,000 900 ملي ثانية للدقة التي تبلغ 1080p وفقًا لما تم تحديده من خلال اختبار أداء كاميرا CTS بموجب ظروف الإضاءة في نظام تكنولوجيا المعلومات (ITS) (3000 كيلوبايت) لكلتا الكاميرتين الأساسيتين.
    • [7.5/H-1-6] يجب أن يكون وقت استجابة بدء تشغيل الكاميرا 2 (الكاميرا) (فتح الكاميرا لإطار المعاينة الأول) أقل من 500 ملي ثانية كما تم قياسها من خلال اختبار أداء كاميرا CTS في ظل ظروف الإضاءة (3000 كيلوبايت) لكلتا الكاميرتين الأساسيتين.
    • [7.5/H-1-8] يجب أن يتوافق مع CameraMetadata.REQUEST_AVAILABLE_CAPABILITIES_RAW وandroid.graphics.ImageFormat.RAW_SENSOR للكاميرا الخلفية الأساسية.
    • [7.5/H-1-9] يجب أن تتوفر كاميرا أساسية خلفية متوافقة مع 720p أو 1080p بسرعة 240 لقطة في الثانية.
    • [7.5/H-1-10] يجب أن يحتوي على ZOOM_RATIO أقل من 1.0 للكاميرات الأساسية في حال وجود كاميرا ذات ألوان عاكسة جدًا تتجه نحو نفس الاتجاه.
    • [7.5/H-1-11] يجب تنفيذ بث مباشر متزامن للواجهة الأمامية على الكاميرات الأساسية.
    • [7.5/H-1-12] يجب أن يتوافق مع CONTROL_VIDEO_STABILIZATION_MODE_PREVIEW_STABILIZATION لكل من الكاميرا الأمامية والخلفية الأساسية.
    • [7.5/H-1-13] يجب أن يتوافق مع إمكانية استخدام LOGICAL_MULTI_CAMERA للكاميرات الأساسية في حال توفُّر أكثر من كاميرا واحدة تستند إلى النموذج اللوني أحمر أخضر أزرق (RGB) متجهة نحو الاتجاه نفسه.
    • [7.5/H-1-14] يجب أن يتوافق مع إمكانات STREAM_USE_CASE لكل من الكاميرا الأمامية والخلفية الرئيسية.
    • [7.5/H-1-15] يجب أن يتوافق مع Bokeh & إضافات "الوضع الليلي" من خلال امتدادَي CameraX و Camera2 في الكاميرات الأساسية.
    • [7.5/H-1-16] يجب أن يتوافق مع إمكانات DYNAMIC_RANGE_TEN_BIT للكاميرات الأساسية.
    • يجب أن يتوافق [7.5/H-1-17] مع control_SCENE_mode_FACE_PRIORITY والتعرّف على الوجوه (StatISTICS_FACE_DETECT_mode_SIMPLE أو StatISTICS_FACE_DETECT_mode_FULL مع الكاميرات الرئيسية.

  • 2.2.7.3. الأجهزة:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تعرض android.os.Build.VERSION_CODES.U لـ android.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS، سيتم عندها:

    • [7.1.1.1/H-2-1] يجب أن تكون دقة الشاشة 1080p على الأقل.
    • [7.1.1.3/H-2-1] يجب أن تبلغ كثافة الشاشة 400 نقطة لكل بوصة على الأقلّ.
    • يجب أن يشتمل [7.1.1.3/H-3-1] على شاشة بتقنية HDR تتوافق مع 1,000 وحدة نِت على الأقل.
    • [7.6.1/H-2-1] يجب أن تتوفّر ذاكرة فعلية بسعة 8 غيغابايت على الأقل.

  • 2.2.7.4. الأداء:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة المحمولة باليد تعرض android.os.Build.VERSION_CODES.U لـ android.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS، سيتم عندها:

    • [8.2/H-1-1] يجب أن يضمن أداء كتابة تسلسلي لا يقل عن 150 ميغابايت/ثانية.
    • [8.2/H-1-2] يجب أن يضمن أداء كتابة عشوائي لا يقل عن 10 ميغابايت/ثانية.
    • [8.2/H-1-3] يجب أن يضمن أداء قراءة تسلسلي لا يقل عن 250 ميغابايت/ثانية.
    • [8.2/H-1-4] يجب أن يضمن أداء قراءة عشوائي لا يقل عن 100 ميغابايت/ثانية.
    • [8.2/H-1-5] يجب أن يضمن أداء قراءة وكتابة متوازٍ متوازٍ مع أداء بمقدار 2x للقراءة و1x أداء لا يقل عن 50 ميغابايت في الثانية.

  • 2.3.2 الوسائط المتعددة:

    عرض النسخة السابقة

    يجب أن تتوافق عمليات تنفيذ أجهزة التلفزيون مع تنسيقات ترميز الفيديو التالية وإتاحتها للتطبيقات التابعة لجهات خارجية:

    • [5.2/T-0-3] AV1

    يجب أن تتيح عمليات تنفيذ أجهزة التلفزيون تنسيقات فك ترميز الفيديو التالية وإتاحتها للتطبيقات التابعة لجهات خارجية:

  • 2.4.5. نموذج الأمان:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تتضمّن شاشة قفل آمنة وتتضمن وكيلاً موثوقًا واحدًا أو أكثر يستخدم TrustAgentService System API، سينفّذ ما يلي:

    • [9.11.1/W-1-1] يجب أن يطلب المستخدم من المستخدم تنفيذ إحدى طرق المصادقة الأساسية المقترَحة (مثل رقم التعريف الشخصي أو النقش أو كلمة المرور) أكثر من مرة واحدة كل 72 ساعة.

  • 2.5.1. الأجهزة:

    عرض النسخة السابقة

    في حال اشتملت عمليات تنفيذ الجهاز على إمكانية بث إذاعية AM/FM وإبراز الوظائف لأي تطبيق، سيتم إجراء ما يلي:

    • [7.4.10/A-0-1] يجب أن يعلن عن دعم FEATURE_BROADCAST_RADIO.

    كاميرا الرؤية الخارجية هي كاميرا تصور مشاهد خارج الجهاز، مثل كاميرا الرؤية الخلفية.

    عمليات تنفيذ أجهزة السيارات:

    • يجب أن تشمل كاميرا واحدة أو أكثر للعرض الخارجي.

    إذا كانت تصاميم أجهزة السيارات تتضمّن كاميرا عرض خارجية، بالنسبة إلى هذه الكاميرا، فإنّها:

    • [7.5/A-1-1] يجب ألا تتوفر كاميرات للمشاهدة من الخارج يمكن الوصول إليها عبر واجهات برمجة تطبيقات كاميرا Android، ما لم تتوافق مع المتطلبات الأساسية للكاميرا.
    • [7.5/A-SR-1] يُنصح بشدة بعدم تدوير معاينة الكاميرا أو عكسها أفقيًا.
    • [7.5/A-SR-2] يُنصح بشدة بتصويرها بدرجة دقة لا تقل عن 1.3 ميغابكسل.
    • يجب أن يحتوي الجهاز إما على جهاز ذي تركيز ثابت أو EDOF (عمق مجال ممتد).
    • قد يتم تنفيذ التركيز التلقائي للجهاز أو التركيز التلقائي للبرامج في برنامج تشغيل الكاميرا.

    إذا كانت عمليات تنفيذ أجهزة السيارات تتضمّن كاميرا واحدة أو أكثر من كاميرات المراقبة الخارجية، وتحميل خدمة نظام الرؤية الخارجية (EVS)، عندئذٍ بالنسبة إلى مثل هذه الكاميرا، سيتم إجراء ما يلي:

    • [7.5/A-2-1] يجب ألا يتم تدوير معاينة الكاميرا أو عكسها أفقيًا.

    عمليات تنفيذ أجهزة السيارات:

    • قد يشتمل على كاميرا واحدة أو أكثر تتوفّر لتطبيقات تابعة لجهات خارجية.

    إذا كانت عمليات تنفيذ أجهزة السيارات تتضمّن كاميرا واحدة على الأقل وإتاحتها للتطبيقات التابعة لأطراف ثالثة، سيتم عندها:

    • [7.5/A-3-1] يجب الإبلاغ عن علامة الميزة android.hardware.camera.any.
    • [7.5/A-3-2] يجب ألا يتم التعريف عن الكاميرا باعتبارها كاميرا نظام.
    • قد تتوافق مع الكاميرات الخارجية الموضّحة في القسم 7.5.3.
    • قد تتضمن ميزات (مثل التركيز التلقائي، وغيرها) المتوفرة للكاميرات الخلفية كما هو موضح في القسم 7.5.1.

    الكاميرا الخلفية هي عبارة عن كاميرا مواجهة للعالم يمكن وضعها في أي مكان في المركبة ومواجهة الجزء الخارجي من كابينة السيارة، أي صور للمشاهد في أقصى الجانب من هيكل المركبة، مثل كاميرا الرؤية الخلفية.

    الكاميرا الأمامية هي كاميرا موجَّهة للمستخدم يمكن وضعها في أي مكان على المركبة والمواجهة داخل كابينة السيارة، أي صور للمستخدم، مثل مؤتمرات الفيديو والتطبيقات المشابهة.

    عمليات تنفيذ أجهزة السيارات:

    • [7.5/A-SR-1] يُوصى بشدة بتضمين كاميرا واحدة أو أكثر مواجهة للعالم.
    • قد يشتمل على كاميرا واحدة أو أكثر موجَّهة للمستخدمين.
    • [7.5/A-SR-2] يُوصى بها بشدة لإتاحة البث المتزامن لعدة كاميرات.

    إذا كانت عمليات تنفيذ أجهزة Automotive تتضمّن كاميرا واحدة على الأقل مواجهة للعالم، وبالنسبة إلى هذه الكاميرا، سيتم إجراء ما يلي:

    • [7.5/A-1-1] يجب أن يكون موجهًا بحيث يتوافق البُعد الطويل للكاميرا مع المحور X-Y لمحاور جهاز استشعار السيارات في Android.
    • [7.5/A-SR-3] يُوصى بشدة بأن تحتوي على أجهزة ذات تركيز ثابت أو EDOF (عمق مجال الحقل الممتد).
    • [7.5/A-1-2] يجب أن تتضمن الكاميرا الأساسية المواجهة للعالم كالكاميرا المواجهة للعالم والتي تتضمن أدنى معرّف للكاميرا.

    إذا كانت عمليات تنفيذ أجهزة Automotive تتضمّن كاميرا واحدة على الأقل موجَّهة للمستخدمين، يجب مراعاة ما يلي في ما يتعلّق بهذه الكاميرا:

    • [7.5/A-2-1] يجب أن تكون الكاميرا الأساسية الموجَّهة للمستخدمين ذات رقم التعريف الأدنى للكاميرا.
    • وقد يتم توجيهها بحيث يتوافق البُعد الطويل للكاميرا مع المحور X-Y لمحاور أداة استشعار السيارات في Android.

    إذا كانت عمليات تنفيذ أجهزة Automotive تتضمّن كاميرا يمكن الوصول إليها من خلال واجهة برمجة تطبيقات android.hardware.Camera أو android.hardware.camera2، يجب عندها:

    • [7.5/A-3-1] يجب أن يتوافق مع متطلبات الكاميرا الأساسية في الفقرة 7.5.

    إذا كانت عمليات تنفيذ أجهزة Automotive تتضمّن كاميرا لا يمكن الوصول إليها من خلال واجهة برمجة التطبيقات android.hardware.Camera أو android.hardware.camera2، سيتم عندها:

    • [7.5/A-4-1] يجب أن يكون متاحًا من خلال خدمة نظام العرض الممتد.

    إذا كانت عمليات تنفيذ أجهزة Automotive تتضمّن كاميرا واحدة أو أكثر يمكن الوصول إليها من خلال "خدمة نظام العرض الموسَّع"، بالنسبة إلى هذه الكاميرا، ينطبق ما يلي:

    • [7.5/A-5-1] يجب ألا يتم تدوير معاينة الكاميرا أو عكسها أفقيًا.
    • [7.5/A-SR-4] يُوصى بشدة بأن تكون درجة الدقة 1.3 ميغابكسل على الأقل.

    إذا كانت عمليات تنفيذ الأجهزة في السيارات تتضمّن كاميرا واحدة أو أكثر يمكن الوصول إليها عبر كل من Extended View System Service وandroid.hardware.Camera أو واجهة برمجة التطبيقات android.hardware.Camera2، عند استخدام هذه الكاميرا، سيتم إجراء ما يلي:

    • [7.5/A-6-1] يجب الإبلاغ عن معرّف الكاميرا نفسه.

    إذا كانت عمليات تنفيذ أجهزة Automotive توفِّر واجهة برمجة تطبيقات خاصة بالكاميرا، سيتم إجراء ما يلي:

    • [7.5/A-7-1] يجب تنفيذ واجهة برمجة تطبيقات للكاميرا باستخدام android.hardware.camera2 واجهة برمجة التطبيقات أو Extended View System API.

  • 2.5.3. البرامج:

    عرض النسخة السابقة

    عمليات تنفيذ أجهزة السيارات:

    • [3.8/A-0-1] يجب ألا يسمح للمستخدمين الثانويين الكاملة الذين ليسوا المستخدمين الحاليين في المقدّمة بإطلاق الأنشطة والوصول إلى واجهة المستخدم على أي شاشات.

  • 2.5.5. نموذج الأمان:

    عرض النسخة السابقة

    إذا تضمّنت عمليات تنفيذ أجهزة السيارات السمة android.hardware.microphone، سيتم ما يلي:

    • [9.8.2/A-1-1] يجب أن يعرض مؤشر الميكروفون عندما يصل أحد التطبيقات إلى البيانات الصوتية من الميكروفون، ولكن ليس عندما يتم الوصول إلى الميكروفون فقط من خلال HotwordDetectionService أو SOURCE_HOTWORD أوContentCaptureService أو التطبيقات التي تمتلك الأدوار المذكورة في القسم 9.1 بمعرّف CDD [C-4-X].
    • [9.8.2/A-1-2] يجب ألا يخفي مؤشر الميكروفون لتطبيقات النظام التي لها واجهات مستخدم مرئية أو تفاعل مباشر من المستخدم.
    • [9.8.2/A-1-3] يجب أن يوفر للمستخدم إمكانية تبديل الميكروفون في تطبيق "الإعدادات".

    إذا تضمّنت عمليات تنفيذ أجهزة السيارات السمة android.hardware.camera.any، سيتم ما يلي:

    • [9.8.2/A-2-1] يجب عرض مؤشر الكاميرا عند وصول تطبيق إلى بيانات الكاميرا المباشرة، ولكن ليس عندما يتم الوصول إلى الكاميرا من خلال التطبيقات التي تحمل الأدوار على النحو المحدَّد مسماة في القسم 9.1 الأذونات مع معرّف CDD [C-4-X][C.3-X]

    • [9.8.2/A-2-3] يجب أن تتيح للمستخدم إمكانية تبديل الكاميرا في تطبيق "الإعدادات".
    • [9.8.2/A-2-4] يجب أن تعرض التطبيقات الحديثة والنشطة باستخدام الكاميرا على النحو المعروض من PermissionManager.getIndicatorAppOpUsageData()، إلى جانب أي رسائل إحالة مرتبطة بها.

    إذا كانت عمليات تنفيذ الأجهزة تتضمن شاشة قفل آمنة وتتضمن وكيلاً موثوقًا واحدًا أو أكثر يستخدم واجهة TrustAgentService System API، سيتم اتخاذ الإجراءات التالية:

    • [9.11.1/A-1-1] يجب أن يطلب المستخدم إجراء إحدى طرق المصادقة الأساسية المقترَحة (مثل رقم التعريف الشخصي أو النقش أو كلمة المرور) أكثر من مرة واحدة كل 336 ساعة.

‫3. البرامج

  • 3.1. التوافق مع واجهة برمجة التطبيقات المُدارة:

    عرض النسخة السابقة

    عمليات تنفيذ الأجهزة:

    • [C-0-8] يجب ألا يتيح تثبيت التطبيقات التي تستهدف مستوى واجهة برمجة تطبيقات أقل من 23.

  • 3.2.3.5. عناصر Intent للتطبيق المشروطة:

    عرض النسخة السابقة

    إذا أبلغت عمليات تنفيذ الجهاز عن android.hardware.nfc.uicc أو android.hardware.nfc.ese، سيحدث ما يلي:

  • 3.3.1. واجهات التطبيق الثنائية:

    عرض النسخة السابقة

    عمليات تنفيذ الأجهزة:

    • [C-0-12] يجب تصدير رموز الدوال لرموز دالة Vulkan 1.0 Vulkan 1.1 الأساسية والامتدادات VK_KHR_surface وVK_KHR_android_surface وVK_KHR_swapchain وVK_KHR_maintenance1 وVK_KHR_get_physical_device_properties2 من خلال مكتبة libvulkan.so. تجدر الإشارة إلى أنّه على الرغم من أنّ جميع الرموز يجب أن تكون متوفّرة، فإنّ الفقرة 7.1.4.2 تصف بمزيد من التفصيل المتطلّبات التي من المتوقّع أن يتم خلالها التنفيذ الكامل لكل دالة من الوظائف ذات الصلة.

  • 3.8.6. المظاهر:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الجهاز تتضمّن شاشة أو إخراج فيديو، سيتم اتخاذ الإجراءات التالية:

    • [C-1-5] يجب إنشاء لوحات ألوان ديناميكية باستخدام أنماط مظاهر الألوان المذكورة في المستندات Settings.THEME_CUSTOMIZATION_OVERLAY_PACKAGES (راجِع android.theme.customization.theme_styles)، وتحديدًا TONAL_SPOT وVIBRANT وEXPRESSIVE وSPRITZ وRAINBOW وFRUIT_SALAD ووMONOCHROMATIC.

  • 3.8.8. التبديل بين الأنشطة:

    عرض النسخة السابقة

    إذا غيّرت عمليات تنفيذ الأجهزة، بما في ذلك مفتاح التنقل للوظائف الأخيرة كما هو موضّح في القسم 7.2.3، الواجهة، سيحدث ما يلي:

  • 3.9.2 دعم الملفات الشخصية المُدارة:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تشير إلى android.software.managed_users، سيتم ما يلي:

    • [C-1-10] يجب التأكّد من حفظ بيانات لقطة الشاشة في مساحة تخزين ملف العمل عند التقاط لقطة شاشة باستخدام نافذة topActivity ذات تركيز (تلك التي تفاعل معها المستخدم في آخر مرة من بين جميع الأنشطة) وتنتمي إلى تطبيق ملف العمل.
    • [C-1-11] يجب ألا يلتقط أي محتوى شاشة آخر (شريط النظام أو الإشعارات أو أي محتوى في الملف الشخصي) باستثناء نافذة/نوافذ تطبيق ملف العمل عند حفظ لقطة شاشة في ملف العمل (للتأكد من عدم حفظ بيانات الملف الشخصي في ملف العمل).

  • 3.9.5 إطار عمل حل سياسة الجهاز: قسم جديد

    عرض النسخة السابقة

    في حال حدوث تقرير android.software.device_admin أو android.software.managed_users لعمليات تنفيذ الجهاز، سيتم ما يلي:

    • [C-1-1] يجب حلّ التعارضات في سياسات الجهاز على النحو الموثَّق في مستندات AOSP.

‫5. التوافق مع الوسائط المتعددة

  • 5.1.4. ترميز الصور:

    عرض النسخة السابقة

    يجب أن تدعم عمليات تنفيذ الأجهزة ترميز الصور التالي:

    • [C-0-4] AVIF
      • يجب أن تتوافق الأجهزة مع BITRATE_MODE_CQ والملف الشخصي الأساسي.

  • 5.1.5. فك ترميز الصور:

    عرض النسخة السابقة

    يجب أن تتيح عمليات تنفيذ الأجهزة فك ترميز الصور التالية:

    [C-0-7] AVIF (الملف الشخصي الأساسي)

  • 5.1.6. تفاصيل برامج ترميز الصور:

    عرض النسخة السابقة

    التنسيق/برنامج الترميز التفاصيل أنواع الملفات/تنسيقات الحاويات المتوافقة
    صور JPEG أساسي+تدريجي JPEG (.jpg)
    GIF GIF (.gif)
    PNG PNG (.png)
    BMP BMP (.bmp)
    تنسيق WebP WebP (.webp)
    عرض أوّلي ARW (.arw) وCR2 (.cr2) وDNG (.dng) وNEF (.nef) وNRW (.nrw) وORF (.orf) وPEF (.pef) وRAF (.raf) وRW2 (.rw2) وSRW (.srw)
    ملف HEIF الصور، مجموعة الصور، تسلسل الصور HEIF (.heif) وHEIC (.heic)
    AVIF (الملف الشخصي الأساسي) الصور، مجموعة الصور، الملف الشخصي الأساسي لتسلسل الصور حاوية HEIF (.avif)

  • 5.1.8. قائمة برامج ترميز الفيديو:

    عرض النسخة السابقة

    التنسيق/برنامج الترميز التفاصيل أنواع الملفات/تنسيقات الحاويات المطلوبة
    بروتوكول H.263
    • 3GPP (.3gp)
    • MPEG-4 (.mp4)
    • Matroska (.mkv، فك الترميز فقط)
    H.264 AVC راجِع القسم 5.2 و5.3 لمعرفة التفاصيل.
    • 3GPP (.3gp)
    • MPEG-4 (.mp4)
    • MPEG-2 TS (.ts، لا يمكن البحث عنه)
    • Matroska (.mkv، فك الترميز فقط)
    H.265 HEVC راجِع القسم 5.3 لمعرفة التفاصيل.
    • MPEG-4 (.mp4)
    • Matroska (.mkv، فك الترميز فقط)
    MPEG-2 الجودة الرئيسية
    • MPEG2-TS (.ts، لا يمكن البحث عنه)
    • MPEG-4 (.mp4، فك الترميز فقط)
    • Matroska (.mkv، فك الترميز فقط)
    MPEG-4 SP
    • 3GPP (.3gp)
    • MPEG-4 (.mp4)
    • Matroska (.mkv، فك الترميز فقط)
    نموذج الفيديو 8 (VP8) راجِع القسم 5.2 و5.3 لمعرفة التفاصيل.
    نموذج الفيديو 9 (VP9) راجِع القسم 5.3 لمعرفة التفاصيل.
    AV1 اطّلِع على القسم 5.2 والقسم 5.3 للحصول على التفاصيل.
    • MPEG-4 (.mp4)
    • Matroska (.mkv، فك الترميز فقط)

  • 5.1.10. وصف برنامج ترميز الوسائط:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تتوافق مع برامج ترميز الفيديو:

    • [C-2-1] يجب أن تنشر جميع برامج ترميز الفيديو بيانات قابلة للتحقيق في عدد اللقطات في الثانية بالأحجام التالية إذا كان برنامج الترميز متوافقًا:
    SD (جودة منخفضة) SD (جودة عالية) دقة عالية - 720 بكسل دقة عالية - 1080 بكسل دقة فائقة
    دقة الفيديو
    • 176 × 144 بكسل (H263 أو MPEG2 أو MPEG4)
    • 352 × 288 بكسل (برنامج ترميز MPEG4 أو H263 أو MPEG2)
    • 320 × 180 بكسل (VP8 وVP8)
    • 320 × 240 بكسل (غير ذلك)
    • 704 × 576 بكسل (H263)
    • 640 × 360 بكسل (VP8 وVP9)
    • 640 × 480 بكسل (برنامج ترميز MPEG4)
    • 720 × 480 بكسل (غير ذلك، AV1)
    • 1408 × 1152 بكسل (H263)
    • 1280 × 720 بكسل (غير ذلك، AV1)
    1920 × 1080 بكسل (باستثناء MPEG4 وAV1) 3840 × 2160 بكسل (HEVC وVP9 وAV1)

  • 5.2. ترميز الفيديو:

    عرض النسخة السابقة

    إذا كانت آليات تنفيذ الأجهزة تتوافق مع أي برنامج ترميز للفيديو وإتاحتها لتطبيقات تابعة لجهات خارجية، سيتم اتخاذ الإجراءات التالية:

    • ينبغي ألا يزيد معدل نقل البيانات عن نافذتين منزلقتين عن معدل نقل البيانات بين الفواصل الزمنية داخل الإطار (I-frame).
    • من المفترض ألا يتجاوز معدل نقل البيانات نسبة 100% خلال نافذة منبثقة تبلغ ثانية واحدة.

    إذا كانت عمليات تنفيذ الأجهزة متوافقة مع أي برنامج ترميز للفيديو وإتاحتها للتطبيقات التابعة لجهات خارجية، وضبطت
    MediaFormat.KEY_BITRATE_MODE على BITRATE_MODE_VBR كي يعمل برنامج الترميز في وضع "معدل نقل بيانات متغيّر"، وطالما أنّ ذلك لا يؤثر في الحد الأدنى لحد الجودة، فإن معدل نقل البيانات المرمّز :

    • [C-5-1] يجب ألّا يكون معدّل نقل البيانات فوق نافذة منزلقة واحدة أعلى من معدل نقل البيانات بنسبة تتجاوز 15% بين الفواصل الزمنية للإطار الداخلي (I-frame).
    • [C-5-2] يجب ألا يزيد معدل نقل البيانات عن 100% خلال نافذة تمرير مدتها ثانية واحدة.

    إذا كانت عمليات تنفيذ الأجهزة متوافقة مع أي برنامج ترميز للفيديو وإتاحتها للتطبيقات التابعة لجهات خارجية وضبطت السمة MediaFormat.KEY_BITRATE_MODE على BITRATE_MODE_CBR حتى يعمل برنامج الترميز في وضع معدل نقل بيانات ثابت، يكون معدّل نقل البيانات المرمّز:

    • [C-6-1] يجب "[C-SR-2] يُنصح بشدة بألا تتجاوز معدّل نقل البيانات المستهدَف بنسبة 15% خلال فترة تمرير تبلغ ثانية واحدة

  • 5.2.1. H.263:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة متوافقة مع برامج ترميز H.263 وإتاحتها للتطبيقات التابعة لجهات خارجية، يجب مراعاة ما يلي:

    • [C-1-1] يجب أن يتوافق مع درجة دقة QCIF (176 × 144) باستخدام المستوى 45 للملف الشخصي الأساسي. إنّ استخدام SQCIF اختياري.
    • يجب أن تتوافق مع معدّلات نقل البيانات القابلة للضبط ديناميكيًا لبرنامج الترميز المتوافق.

  • 5.2.5. H.265:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة متوافقة مع برنامج ترميز H.265، سيتم إجراء ما يلي:

    • [C-1-1] يجب أن يتوافق مع المستوى 3 للملف الشخصي الرئيسي بدرجة دقة تصل إلى 512 × 512.
    • يجب أن يكون متوافقًا مع الملفات الشخصية لترميز المحتوى بدقة عالية كما هو موضّح في الجدول التالي.
    • يُنصَح بشدة بأن تكون [C-SR-1] متوافقة مع الملف الشخصي بدقة 720 × 480 بدقة عادية والملفات الشخصية لترميز المحتوى بدقة عالية كما هو موضّح في الجدول التالي في حال توفّر برنامج ترميز للأجهزة.

  • 5.2.6. AV1: قسم جديد

    عرض النسخة السابقة

    في حال كانت عمليات تنفيذ الأجهزة متوافقة مع برنامج ترميز AV1، سيتم عندها:

    • [C-1-1] يجب أن يتوافق مع الملف الشخصي الرئيسي، بما في ذلك محتوى 8 بت و10 بت.
    • [C-1-2] يجب أن ينشر بيانات الأداء، مثل إعداد تقارير عن بيانات الأداء عبر واجهات برمجة التطبيقات getSupportedFrameRatesFor() أو getSupportedPerformancePoints() لدرجات الدقة المتوافقة في الجدول أدناه.

    • [C-1-3] يجب قبول البيانات الوصفية ذات تنسيق HDR وإخراجها في البث المباشر للبيانات

    في حال تسريع برنامج ترميز AV1 باستخدام الأجهزة، سيتم في هذه الحالة تنفيذ ما يلي:

    • [C-2-1] يجب أن يتوافق مع ملف تعريف ترميز HD1080p كحد أقصى من الجدول أدناه:
    الدقة العادية دقة عالية - 720 بكسل دقة عالية - 1080 بكسل دقة فائقة
    دقة الفيديو 720 × 480 بكسل 1280 × 720 بكسل 1920 × 1080 بكسل 3840 × 2160 بكسل
    عدد اللقطات في الثانية للفيديو 30 إطارًا في الثانية 30 إطارًا في الثانية 30 إطارًا في الثانية 30 إطارًا في الثانية
    معدّل نقل بيانات الفيديو ‫5 ميغابت في الثانية ‫8 ميغابت في الثانية 16 ميغابت في الثانية 50 ميغابت في الثانية

  • 5.3.2. H.263:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة متوافقة مع برامج فك ترميز H.263، سيتم إجراء ما يلي:

    • [C-1-1] يجب أن يتوافق مع المستوى 30 للملف الشخصي الأساسي (درجات دقة CIF وQCIF وSQCIF بسرعة 30 لقطة في الثانية 384 كيلوبت في الثانية) والمستوى 45 (درجات دقة QCIF وSQCIF بسرعة 30 لقطة في الثانية 128 كيلوبت في الثانية).

  • 5.3.9. AV1:

    عرض النسخة السابقة

    في حال كانت عمليات تنفيذ الأجهزة متوافقة مع برنامج ترميز AV1، سيتم إجراء ما يلي:

    • [C-1-1] يجب أن يتوافق مع الملف الشخصي 0، بما في ذلك محتوى 10 بت.

    إذا كانت عمليات تنفيذ الأجهزة تتوافق مع برنامج ترميز AV1 وإتاحتها للتطبيقات التابعة لجهات خارجية، سيتم إجراء ما يلي:

    • [C-1-1] يجب أن يتوافق مع الملف الشخصي الرئيسي، بما في ذلك محتوى 8 بت و10 بت.

    إذا كانت عمليات تنفيذ الأجهزة تتوافق مع برنامج ترميز AV1 باستخدام برنامج فك ترميز الأجهزة المسرَّع على الجهاز، عندها:

    • [C-2-1] يجب أن يكون قادرًا على فك ترميز الملفات الشخصية لفك ترميز الفيديوهات بدقة عالية تبلغ 720p على الأقل من الجدول أدناه عندما يكون الارتفاع الذي تم الإبلاغ عنه باستخدام الطريقة Display.getSupportedModes() يساوي 720p أو أكبر منه.
    • يجب أن يتمكّن [C-2-2] من فك ترميز الملفات الشخصية لفك ترميز الفيديوهات بدقة عالية تبلغ 1080p على الأقل من الجدول أدناه عندما يكون الارتفاع الذي تم الإبلاغ عنه باستخدام الطريقة Display.getSupportedModes() مساويًا لـ 1080p أو أكبر منه.
    الدقة العادية دقة عالية - 720 بكسل دقة عالية - 1080 بكسل دقة فائقة
    دقة الفيديو 720 × 480 بكسل 1280 × 720 بكسل 1920 × 1080 بكسل 3840 × 2160 بكسل
    عدد اللقطات في الثانية للفيديو 30 إطارًا في الثانية 30 إطارًا في الثانية 30 إطارًا في الثانية 30 إطارًا في الثانية
    معدّل نقل بيانات الفيديو ‫5 ميغابت في الثانية ‫8 ميغابت في الثانية 16 ميغابت في الثانية 50 ميغابت في الثانية

    إذا كانت عمليات تنفيذ الأجهزة تتوافق مع ملف HDR Profile من خلال واجهات برمجة تطبيقات الوسائط، سيتم عندها ما يلي:

    • [C-3-1] يجب أن يتيح استخراج وإخراج البيانات الوصفية ذات تنسيق HDR من البث المباشر و/أو الحاوية.
    • [C-3-2] يجب أن يعرض محتوى HDR بشكل صحيح على شاشة الجهاز أو على منفذ إخراج الفيديو العادي (مثل HDMI).

  • 5.4.2. الالتقاط للتعرّف على الصوت:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تشير إلى android.hardware.microphone، سيتم ما يلي:

    • يجب ضبط حساسية إدخال الصوت مسبقًا: عند استخدام مصدر نغمة جيبية بتردد 1000 هرتز (350 هرتز) ومصدر نغمة جيبية 3 تردد يتم تشغيله عند مستوى ضغط صوت يبلغ 90 ديسيبل (SPL) (يتم قياسه على مسافة 30 سم من بجانب الميكروفون) يحصل على استجابة مثالية لعينات RMS 2507 ضمن نطاق 1 نقطة من RMS 2507.

  • 5.5.2. التأثيرات الصوتية:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تشير إلى ميزة "android.hardware.audio.output"، سيتم ما يلي:

    • [C-1-4] يجب أن يتوافق مع التأثيرات الصوتية مع إدخال وإخراج عائم.
    • [C-1-5] يجب التأكد من توافق التأثيرات الصوتية مع قنوات متعددة حتى عدد قنوات المزج المعروفة أيضًا باسم FCC_LIMIT.

  • 5.6. وقت استجابة الصوت:

    عرض النسخة السابقة

    إذا أشارت عمليات تنفيذ الأجهزة إلى أنّ android.hardware.audio.output موصى بها بشدة لاستيفاء المتطلبات التالية أو تجاوزها:

    • [C-SR-4] الطابع الزمني للمخرجات التي يتم عرضها بواسطة AudioTrack.getTimestamp وAAudioStream_getTimestamp بدقة تصل إلى +/- 1 ملي ثانية.

    • [C-SR-4] ننصح بشدة بأن تكون أوقات الاستجابة ذهابًا وإيابًا المحسوبة استنادًا إلى الطوابع الزمنية للإدخال والإخراج التي تعرضها "AAudioStream_getTimestamp" أن تكون خلال 30 ميللي ثانية من وقت استجابة الرحلات ذهابًا وإيابًا AAUDIO_PERFORMANCE_MODE_NONE وAAUDIO_PERFORMANCE_MODE_LOW_LATENCY لمكبّرات الصوت وسماعات الرأس السلكية واللاسلكية.

‫7. توافُق الأجهزة

  • 7.1. العرض والرسومات:

    عرض النسخة السابقة

    يتضمن Android مرافق تعدِّل أصول التطبيقات وتنسيقات واجهة المستخدم تلقائيًا بشكل مناسب للجهاز لضمان عمل التطبيقات التابعة لجهات خارجية بشكل جيد على مجموعة متنوعة من إعدادات الأجهزة. مجموعة متنوعة من شاشات عرض الأجهزة وإعداداتها. الشاشة المتوافقة مع نظام التشغيل Android هي شاشة عرض تنفِّذ جميع السلوكيات وواجهات برمجة التطبيقات الموضَّحة في النظرة العامة على التوافق مع أجهزة Android وهذا القسم (7.1) والأقسام الفرعية التابعة له، بالإضافة إلى أي سلوكيات إضافية خاصة بنوع الجهاز موثَّقة في القسم 2 من هذا القرص المخصّص. على الشاشات المتوافقة مع Android حيث يمكن تشغيل جميع التطبيقات التابعة لجهات خارجية المتوافقة مع Android، يجب تنفيذ واجهات برمجة التطبيقات والسلوكيات هذه بشكل صحيح في عمليات تنفيذ الأجهزة، كما هو موضَّح في هذا القسم.

    بدء متطلبات جديدة

    عمليات تنفيذ الأجهزة:

    • [C-0-1] يجب أن تعرض تلقائيًا تطبيقات الجهات الخارجية على الشاشات المتوافقة مع Android فقط.

    يتم تعريف الوحدات المُشار إليها من خلال المتطلّبات في هذا القسم على النحو التالي:

    • الحجم القطري الفعلي. المسافة بالبوصة بين زاويتين متقابلتين للجزء المضيء من الشاشة.
    • نقاط لكل بوصة (dpi)الكثافة. عدد وحدات البكسل التي يحتوي عليها نطاق خطي أفقي أو رأسي بمقدار 1 بوصة، ويتم التعبير عنه بالبكسل لكل بوصة (ppi أو dpi). عند إدراج قيمتَي dpi ppi وdpi، يجب أن تندرج كل من النقاط الأفقية والعمودية ضمن النطاق المدرَج.
    • نسبة العرض إلى الارتفاع نسبة وحدات البكسل للبعد الأطول إلى البعد الأقصر للشاشة. على سبيل المثال، ستكون الشاشة المعروضة بمقاس 480×854 بكسل 854/480 = 1.779 أو 16:9 تقريبًا.
    • وحدة بكسل مستقلة الكثافة (dp) وحدة بكسل افتراضية تمت تسويتها لشاشة تبلغ 160 نقطة لكل بوصة كثافة شاشة تبلغ 160. بالنسبة إلى بعض قيم الكثافة d وعدد من وحدات البكسل (p)، يتم احتساب عدد وحدات البكسل المستقلة الكثافة على النحو التالي: بكسل = dps * (الكثافة/160) dp = (160 / d) * p

  • 7.1.1.1. حجم الشاشة وشكلها:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تتوافق مع الشاشات التي يمكنها UI_MODE_TYPE_NORMAL ضبط المقاس وتتضمن أجهزة عرض متوافقة مع Android تستخدم شاشات مادية ذات زوايا دائرية لعرض هذه الشاشات، سيعمل ذلك على:

    • يجب أن يتأكد [C-1-1] من استيفاء أحد المتطلبات التالية على الأقل لكل عملية عرض من هذا النوع:
    • نصف قطر الزوايا المستديرة أقل من أو يساوي 38 وحدة بكسل مستقلة الكثافة.
    • عند تثبيت مربّع بحجم 15 بكسل مستقل الكثافة × 15 بكسل مستقل الكثافة في كل زاوية من زوايا الشاشة المنطقية، يظهر على الشاشة وحدة بكسل واحدة على الأقل من كل مربّع.

    • يجب أن تتوفر قدرة المستخدم على التبديل إلى وضع العرض ذي الزوايا المستطيلة.

    بدء متطلبات جديدة

    إذا كانت عمليات تنفيذ الأجهزة متوافقة فقط مع ضبط لوحة مفاتيح NO_KEYS، وكانت تهدف إلى الإبلاغ عن إتاحة إعدادات وضع واجهة المستخدم UI_MODE_TYPE_NORMAL، سيتم إجراء ما يلي:

    • [C-4-1] يجب أن يتوفّر حجم تصميم لا يقلّ عن 596 بكسل مستقل الكثافة x 384 بكسل مستقل الكثافة، باستثناء أي خطوط مقطوعة للشاشة

    إذا كانت تطبيقات الأجهزة تتضمن شاشات قابلة للطي ومتوافقة مع Android أو تتضمن مفصلة قابلة للطي بين لوحات عرض متعددة لإتاحة عرض هذه الشاشات لعرض تطبيقات تابعة لجهات خارجية، سيتم اتخاذ الإجراءات التالية:

    إذا كانت تطبيقات الأجهزة تتضمن شاشات قابلة للطي ومتوافقة مع Android أو تتضمن مفصلة قابلة للطي بين لوحات عرض متعددة وإذا كانت المفصلة أو الطي تعبر نافذة التطبيق بملء الشاشة، في ما يلي الإجراءات التالية:

    • [C-3-1] يجب أن يبلغ عن موضع المفصّلة أو الطي وحدودها وحالتها من خلال الإضافات أو واجهات برمجة تطبيقات الصورة الجانبية إلى التطبيق.

    إذا كانت عمليات تنفيذ الأجهزة تتضمن منطقة عرض واحدة أو أكثر قابلة للطي ومتوافقة مع Android، أو تتضمن مفصلاً قابل للطي بين مناطق لوحة عرض متعددة متوافقة مع Android وإتاحة مساحات العرض هذه للتطبيقات، على النحو التالي:

    • [C-4-1] يجب تنفيذ الإصدار الصحيح من مستوى واجهة برمجة تطبيقات إضافات إدارة النوافذ كما هو موضح في المستندات القادمة.

  • 7.1.1.2. نسبة عرض إلى ارتفاع الشاشة: تمت إزالتها

  • 7.1.1.3. كثافة الشاشة:

    عرض النسخة السابقة

    عمليات تنفيذ الأجهزة:

    • [C-0-1] وفقًا للإعدادات التلقائية، يجب أن تُبلغ عمليات تنفيذ الأجهزة 1 إحدى قيم كثافات إطار عمل Android المُدرجة في DisplayMetrics من خلال DENSITY_DEVICE_STABLE واجهة برمجة التطبيقات، ويجب أن تكون هذه القيمة قيمة ثابتة لكل عرض مادي يجب ألا يتم تغييرها في أي وقت، إلا أنّ تكون البيانات مختلفةDisplayMetrics.density

    • يجب أن تحدِّد عمليات تنفيذ الأجهزة كثافة إطار عمل Android العادية الأقرب رقميًا للكثافة الفعلية للشاشة، ما لم تكن تلك الكثافة المنطقية تؤدي إلى انخفاض حجم الشاشة المبلّغ عنه عن الحد الأدنى المتاح. إذا كانت الكثافة العادية لإطار عمل Android الأقرب رقميًا إلى الكثافة المادية تؤدي إلى حجم شاشة أصغر من أصغر حجم شاشة متوافق متوافق (320 بكسل مستقل الكثافة)، يجب أن يتم تسجيل ثاني أقل كثافة قياسية لإطار عمل Android في عمليات تنفيذ الأجهزة.

    بدء متطلبات جديدة

    • "يجب تحديد الكثافة العادية لإطار عمل Android" الأقرب رقميًا إلى الكثافة المادية للشاشة، أو قيمة يمكن ربطها بقياسات مجال الرؤية الزاوي المكافئة نفسها على الجهاز المحمول باليد.

    إذا كانت عمليات تنفيذ الأجهزة توفّر إمكانية تغيير حجم عرض الجهاز، سيؤدي ذلك إلى ما يلي:

    • [C-1-1] يجب ألا يتم تحجيم حجم العرض يجب ألا يزيد حجم الشاشة بأكبر من 1.5 مرة DENSITY_DEVICE_STABLE الكثافة الأصلية أو يجب أن ينتج عنه حد أدنى فعّال لبُعد الشاشة أصغر من 320 بكسل مستقل الكثافة (يعادل مؤهِّل الموارد sw320dp)، أيهما أقرب.
    • [C-1-2] يجب ألا يتم تغيير حجم شاشة العرض يجب ألا يضبط حجم الشاشة على أقل من 0.85 مرة من DENSITY_DEVICE_STABLE الكثافة الأصلية.

  • 7.1.4.2 Vulkan:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تتضمّن توافقًا مع Vulkan 1.0 أو إصدارًا أحدث، سيتم إجراء ما يلي:

    • [C-1-3] يجب تنفيذ واجهات برمجة تطبيقات Vulkan 1.0 Vulkan 1.1 بشكل كامل لكل تعداد VkPhysicalDevice.

    • [C-1-5] يجب ألا تعداد الطبقات التي توفّرها المكتبات خارج حزمة التطبيق، أو توفير طرق أخرى لتتبُّع أو اعتراض واجهة Vulkan API، ما لم يتم ضبط السمة android:debuggable على true أو البيانات الوصفية com.android.graphics.injectLayers.enable التي تم ضبطها على true .

    • يجب أن تكون متوافقة مع VkPhysicalDeviceProtectedMemoryFeatures وVK_EXT_global_priority.

    • [C-SR-5] يُنصَح باستخدامها بشدة لإتاحة VkPhysicalDeviceProtectedMemoryFeatures.protectedMemory وVK_EXT_global_priority.

    • [C-SR-6] يُنصَح بشدة باستخدام SkiaVk مع HWUI.

    في حال اشتملت عمليات تنفيذ الأجهزة على التوافق مع الإصدار 1.1 من Vulkan وتم الإفصاح عن أي من علامات ميزات Vulkan الموضّحة هنا ، سيكون ذلك:

    • [C-SR-7] يُنصَح باستخدامها بشدة لإتاحة الامتداد VK_KHR_external_fence_fd للتطبيقات التابعة لجهات خارجية والسماح للتطبيق بتصدير حمولات بيانات السياج الأساسية واستيرادها من أدوات وصف ملفات POSIX على النحو الموضّح هنا.

  • 7.3.10. أجهزة الاستشعار الحيوية:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تتضمّن عدة أدوات استشعار حيوية، سيتم إجراء ما يلي:

    • [C-7-1] يجب أن تكون المقاييس الحيوية غير متاحة (أي أنّ المقاييس الحيوية غير مفعَّلة إلى أن يفتح المستخدم قفلها باستخدام المصادقة الأساسية) أو عندما يكون استخدام المقاييس الحيوية غير مفعَّل مؤقتًا إلى أن ينتظر المستخدم فاصلاً زمنيًا بسبب عدم نجاحها بسبب عدد كبير جدًا من المحاولات الفاشلة. في حالة الحظر المحدد زمنيًا، يجب أن يكون وقت التراجع للتحقق باستخدام المقاييس الحيوية هو الحد الأقصى لوقت التراجع لجميع المقاييس الحيوية في التأمين المحدد زمنيًا.

    • [C-SR-12] يُنصح باستخدامها بشدة عندما تكون المقاييس الحيوية غير مفعَّلة (أي أنّ المقاييس الحيوية غير مفعَّلة إلى أن يفتح المستخدم قفلها باستخدام المصادقة الأساسية) أو عندما يتم إيقاف المقاييس الحيوية مؤقتًا (أي أنّ المقاييس الحيوية غير مفعَّلة مؤقتًا إلى أن ينتظر المستخدم فاصلاً زمنيًا) بسبب تعذُّر إجراء عدد كبير جدًا من المحاولات الفاشلة. في حالة الحظر المحدد زمنيًا، يُنصَح بشدة بأن يكون وقت التراجع للتحقّق باستخدام المقاييس الحيوية، الحد الأقصى المسموح به لوقت التراجع لجميع المقاييس الحيوية، وذلك في إجراءات الحظر المحدَّدة زمنيًا.

    • [C-7-2] يجب أن يطلب المستخدم من المستخدم الحصول على المصادقة الأساسية المقترَحة (مثل رقم التعريف الشخصي أو النقش أو كلمة المرور) لإعادة ضبط عدّاد القفل للمقاييس الحيوية التي تم حظرها. يمكن أن يُسمَح للمقاييس الحيوية من الفئة 3 بإعادة ضبط عداد الأمان باستخدام أحد المقاييس الحيوية المقفلة من الفئة نفسها أو الفئة الأدنى. يجب عدم السماح للمقاييس الحيوية من الفئة 2 أو الفئة 1 بإكمال عملية القفل لأي مقاييس حيوية.

    إذا كانت عمليات تنفيذ الأجهزة تريد التعامل مع أحد أجهزة استشعار المقاييس الحيوية على أنها من الفئة 1 (المعروفة سابقًا باسم مستوى الراحة)، يتم اتخاذ الإجراءات التالية:

    • [C-1-12] يجب ألّا يزيد معدّل قبول النماذج الاحتيالية والمحتال إلى %40 لكلّ نوع من أنواع أدوات هجوم العرض التقديمي (PAI)، وفقًا لما تحدّده بروتوكولات اختبار المقاييس الحيوية على Android.

    • [C-SR-13] يُنصح بشدة بأن يكون معدّل قبول المحتال والاحتيال لا يزيد عن 30% لكل نوع من أنواع أدوات هجوم العرض التقديمي (PAI)، وفقًا لقياس بروتوكولات اختبار المقاييس الحيوية على Android.

    • [C-SR-14] يُنصح بشدة بالإفصاح عن الفئة الحيوية لجهاز الاستشعار الحيوي والمخاطر المرتبطة بتفعيله.

    • [C-SR-17] يُنصَح بشدة بتنفيذ واجهات AIDL الجديدة (مثل IFace.aidl وIFingerprint.aidl).

    إذا كانت عمليات تنفيذ الأجهزة تريد التعامل مع أحد أجهزة استشعار المقاييس الحيوية على أنها من الفئة 2 (المعروفة سابقًا باسم ضعيف)، فإنها:

    • [C-2-3] يجب أن تُجري مطابقة المقاييس الحيوية في بيئة تنفيذ معزولة خارج مساحة مستخدم Android أو مساحة kernel، مثل بيئة التنفيذ الموثوقة (TEE)، أو على شريحة ذات قناة آمنة تؤدي إلى بيئة التنفيذ المعزولة، أو على جهاز افتراضي محمي تستوفي المتطلبات الواردة في الفقرة 9.17.
    • [C-2-4] يجب أن يتم تشفير جميع البيانات التي يمكن التعرّف عليها والمصادقة عليها بطريقة مشفّرة، بحيث لا يمكن الحصول عليها أو قراءتها أو تغييرها خارج بيئة التنفيذ المعزولة أو شريحة ذات قناة آمنة لبيئة التنفيذ المعزولة كما هو موثَّق في إرشادات التنفيذ على موقع "المشروع المفتوح المصدر لنظام Android" الإلكتروني أو على جهاز افتراضي محمي يتم التحكّم فيه من خلال برنامج Hypervisor (7).
    • [C-2-5] بالنسبة إلى المقاييس الحيوية المستندة إلى الكاميرا، عند إجراء المصادقة أو التسجيل باستخدام المقاييس الحيوية:
      • تشغيل الكاميرا في وضع يمنع قراءة إطارات الكاميرا أو تغييرها خارج بيئة التنفيذ المعزولة أو تشغيل شريحة ذات قناة آمنة لبيئة التنفيذ المعزولة أو جهاز افتراضي محمي يتحكّم فيه برنامج Hypervisor (مراقب الأجهزة الظاهرية) الذي يلبّي المتطلبات الواردة في الفقرة 9.17
      • بالنسبة إلى حلول الكاميرا الأحادية اللون الأحمر والأخضر والأزرق، يمكن أن تكون إطارات الكاميرا قابلة للقراءة خارج بيئة التنفيذ المعزولة لدعم العمليات، مثل معاينة التسجيل، ولكن يجب ألا تكون قابلة للتغيير.
    • [C-2-7] يجب ألا يسمح بالوصول غير المشفَّر إلى بيانات المقاييس الحيوية التي تحدّد الهوية أو أي بيانات مستمدة منها (مثل التضمينات) إلى "معالج التطبيقات" خارج سياق بيئة التنفيذ الموثوقة (TEE) أو الجهاز الافتراضي المحمي الذي يتحكّم فيه برنامج Hypervisor (مراقب الأجهزة الظاهرية) الذي يفي بالمتطلبات الواردة في الفقرة 9.17. أمّا بالنسبة إلى الأجهزة التي تعمل بالإصدار 9 من نظام التشغيل Android أو الإصدارات الأقدم، فلا تُستثنى من الإصدار C-2-7.

    إذا كانت عمليات تنفيذ الأجهزة تريد التعامل مع أداة استشعار المقاييس الحيوية على أنها من الفئة 3 (التي كانت تُعرف سابقًا باسم قوية)، فإنها:

  • 7.3.13. معيار IEEE 802.1.15.4 (UWB):

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تشمل التوافق مع 802.1.15.4 وكشفت الوظائف لتطبيق تابع لجهة خارجية، سيتم إجراء ما يلي:

    • [C-1-2] يجب الإبلاغ عن علامة ميزة الجهاز android.hardware.uwb.
    • يجب أن يتوافق [C-1-3] مع جميع مجموعات الضبط التالية (مجموعات الإعدادات المحدَّدة مسبقًا من مَعلمات FIRA UCI) المحددة في تنفيذ بروتوكول AOSP.
      • CONFIG_ID_1: الإرسال الأحادي النطاق STATIC STS DS-TWR الذي يحدده FiRa، والوضع المؤجل، والفاصل الزمني الذي يبلغ 240 ملي ثانية.
      • CONFIG_ID_2: محددة FiRa بنطاق STATIC STS DS-TWR من واحد إلى متعدد، ووضع مؤجل، وتتراوح الفترة الزمنية بين 200 ملي ثانية. حالة الاستخدام النموذجية: يتفاعل الهاتف الذكي مع العديد من الأجهزة الذكية.
      • CONFIG_ID_3: مثل CONFIG_ID_1، باستثناء بيانات زاوية الوصول (AoA)، لا يتم الإبلاغ عنها.
      • CONFIG_ID_4: تمامًا مثل CONFIG_ID_1، باستثناء تفعيل وضع أمان P-STS
      • CONFIG_ID_5: تمامًا مثل CONFIG_ID_2، باستثناء تفعيل وضع أمان P-STS
      • CONFIG_ID_6: تمامًا مثل CONFIG_ID_3، باستثناء تفعيل وضع أمان P-STS
      • CONFIG_ID_7: تمامًا مثل CONFIG_ID_2، باستثناء تفعيل وضع مفتاح التحكّم الفردي في P-STS
    • [C-1-4] يجب أن تتيح للمستخدم إمكانية تغيير حالة تشغيل/إيقاف الراديو باستخدام النطاق الفائق العرض (UWB)
    • [C-1-5] يجب أن تفرض التطبيقات التي تستخدم التردد الفائق العرض (UWB) إذن UWB_RANGING (ضمن مجموعة أذونات NEARBY_DEVICES).

    يساعد اجتياز اختبارات المطابقة والشهادات ذات الصلة التي تحدّدها المؤسسات العادية، بما في ذلك FIRA وCCC وCSA، على ضمان عمل 802.1.15.4 بشكلٍ صحيح.

  • 7.4.1. الاتصالات الهاتفية:

    عرض النسخة السابقة

    يشير مصطلح "الاتصال الهاتفي" كما تستخدمه واجهات برمجة تطبيقات Android وهذا المستند تحديدًا إلى الأجهزة المتعلقة بإجراء مكالمات صوتية وإرسال رسائل SMS، أو إنشاء بيانات جوّال عبر شبكة جوّال (مثل شبكة GSM أو CDMA أو LTE أو NR) أو CDMA . قد يختار جهاز يتيح "الاتصال الهاتفي" توفير بعض خدمات الاتصال والمراسلة والبيانات أو كلها على النحو الذي يتناسب مع المنتج.

    عبر شبكة GSM أو CDMA. قد يتم أو لا يتم تبديل هذه المكالمات الصوتية عبر حزم البيانات، إلا أنّها تخدم أغراض Android التي تعتبر مستقلة عن أي اتصال بيانات يمكن تنفيذه باستخدام الشبكة نفسها. بمعنى آخر، تشير وظيفة "الاتصال الهاتفي" وواجهات برمجة التطبيقات في Android تحديدًا إلى المكالمات الصوتية والرسائل القصيرة SMS. على سبيل المثال، إنّ عمليات تنفيذ الأجهزة التي لا يمكنها إجراء مكالمات أو إرسال/استلام رسائل SMS لا تُعتبر أجهزة هاتفية، بصرف النظر عمّا إذا كانت تستخدم شبكة جوّال لإجراء اتصال البيانات أم لا.

  • 7.4.2. معيار IEEE 802.11 (لشبكات Wi-Fi):

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تشمل التوافق مع معيار 802.11 وكشفت الوظائف لتطبيق تابع لجهة خارجية، سيتم إجراء ما يلي:

    • [C-1-4] يجب أن يتوافق مع نظام أسماء النطاقات ذي البث المتعدد (mDNS) ويجب ألا يؤدي إلى فلترة حزم mDNS (224.0.0.251 أو ff02::fb) في أي وقت من التشغيل، بما في ذلك عندما لا تكون الشاشة في حالة نشطة، ما لم يكن إسقاط هذه الحزم أو فلترتها ضروريًا للحفاظ على نطاقات استهلاك الطاقة السارية في السوق لتطبيقات أجهزة Android TV، حتى عندما تكون في حالة الطاقة في وضع الاستعداد.

  • 7.4.3. البلوتوث:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تشير إلى FEATURE_BLUETOOTH_LE، سيتم تطبيق ما يلي:

    • [C-SR-2] يُنصح بشدة بقياس قيمة معادلة Rx وتعويضها للتأكّد من أنّ القيمة المتوسطة لمعيار BLE RSSI تبلغ -60 ديسيبل ملي واط +/-10 ديسيبل على مسافة 1 متر من جهاز مرجعي يتم نقله في ADVERTISE_TX_POWER_HIGH، حيث تكون الأجهزة موجَّهة على "مستويات متوازية" مع توجيه الشاشات نفسها.
    • [C-SR-3] يُنصح بشدة بقياس قيمة معادلة الصوت Tx وتعويضها للتأكّد من أنّ القيمة المتوسطة لخلاصة RSSI بتقنية BLE -60 ديسيبل ملي واط +/-10 ديسيبل عند البحث عن الجهاز المرجعي على مسافة 1 متر أثناء الإرسال في ADVERTISE_TX_POWER_HIGH، حيث تكون الأجهزة موجَّهة على "المستوى المتوازي"

    • [C-10-3] يجب قياس معادلة Rx وتعويضها لضمان أن تبلغ القيمة المتوسطة لخلاصة RSSI -55 ديسيبل ملي واط +/-10 ديسيبل على مسافة 1 متر من جهاز مرجعي يتم نقله في ADVERTISE_TX_POWER_HIGH.
    • [C-10-4] يجب قياس الإزاحة Tx وتعويضها لضمان أن تبلغ القيمة المتوسطة لخلاصة RSSI -55 ديسيبل ملي واط +/-10 ديسيبل عند إجراء المسح الضوئي من جهاز مرجعي موضوع على مسافة متر واحد ويجري الإرسال في ADVERTISE_TX_POWER_HIGH.

    إذا كانت عمليات تنفيذ الأجهزة تتوافق مع الإصدار 5.0 من البلوتوث، سيتم اتخاذ الإجراءات التالية:

    • [C-SR-4] يُنصَح باستخدامها بشدة لتقديم الدعم في ما يلي:
    • LE 2 مليون
    • LE Codec PHY
    • إضافة LE Advertising
    • الإعلانات الدورية
    • 10 مجموعات إعلانية على الأقل
    • ما لا يقل عن 8 اتصالات متزامنة منخفضة الطاقة (LE). يمكن أن يكون كل رابط في أدوار طوبولوجيا الاتصال.
    • خصوصية طبقة رابط LE
    • حجم "حل القائمة" لا يقل عن 8 إدخالات

  • 7.4.9. النطاق الفائق العرض (UWB):

    عرض النسخة السابقة

    • يجب أن يضمن [C-1-7] أن يكون متوسط قياسات المسافة على بُعد متر واحد من الجهاز المرجعي في نطاق [0.75 متر أو 1.25 متر]، حيث يتم قياس مسافة أرض الواقع من الحافة العلوية من الجزء العلوي من جدول بيانات المستخدم (DUT). مع تثبيت الوجه للأعلى وإمالته بزاوية 45 درجة.

  • 7.5.1. الكاميرا الخلفية:

    عرض النسخة السابقة

    الكاميرا الخلفية هي كاميرا توجد على جانب الجهاز مقابل الشاشة؛ وهي تعرض مشاهد في الجانب الأخير من الجهاز، مثل الكاميرا التقليدية.

    الكاميرا الخلفية هي كاميرا مواجهة للعالم تلتقط صورًا للمشاهد في أقصى الجانب من الجهاز، مثل الكاميرا التقليدية؛ وهي كاميرا في الأجهزة المحمولة باليد وهي كاميرا في جانب الجهاز المقابل للشاشة.

  • 7.5.2. الكاميرا الأمامية:

    عرض النسخة السابقة

    الكاميرا الأمامية هي كاميرا تقع على الجانب نفسه من الجهاز الذي توجد فيه الشاشة، وهي كاميرا تُستخدم عادةً لتصوير المستخدم، مثل مؤتمرات الفيديو والتطبيقات المشابهة.

    الكاميرا الأمامية هي كاميرا موجَّهة للمستخدم تُستخدم عادةً لتصويره، مثل مؤتمرات الفيديو والتطبيقات المشابهة. وفي الأجهزة المحمولة، وهي عبارة عن كاميرا على الجانب نفسه من الجهاز الذي توجد فيه الشاشة.

  • 7.5.3. الكاميرا الخارجية:

    عرض النسخة السابقة

    الكاميرا الخارجية هي كاميرا يمكن توصيلها أو فصلها عن الجهاز في أي وقت وتصويرها في أي اتجاه، مثل كاميرات USB.

  • 7.5.4. سلوك واجهة برمجة التطبيقات للكاميرا:

    عرض النسخة السابقة

    يجب أن تنفِّذ عمليات تنفيذ الأجهزة السلوكيات التالية مع واجهات برمجة التطبيقات المتعلقة بالكاميرا، في جميع الكاميرات المتاحة. عمليات تنفيذ الأجهزة:

    • [C-SR-1] بالنسبة إلى الأجهزة المزوّدة بعدة كاميرات تستند إلى أحمر أخضر أزرق على مسافة قريبة ومواجهة للاتجاه نفسه، يُنصح بشدة بأن يتم استخدام جهاز كاميرا منطقي يعرض إمكانات الكاميرا CameraMetadata.REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA، وتتكوّن هذه الأجهزة من جميع الكاميرات المزوّدة بإضاءة خلفية بألوان الأحمر والأخضر والأزرق والموجهة إلى هذا الاتجاه باعتبارها أجهزة فرعية مادية.

  • 7.5.5. اتجاه الكاميرا:

    عرض النسخة السابقة

    تُستثنى من الشرط أعلاه الأجهزة التي تستوفي جميع المعايير التالية:

    • عمليات تنفيذ الأجهزة التي لا يمكن للمستخدم تدويرها، مثل أجهزة السيارات.

  • 7.10. تقنية اللمس:

    عرض النسخة السابقة

    قد تتضمن الأجهزة التي يتم حملها أو ارتدائها مشغِّلاً يعمل باللمس للأغراض العامة، يكون متاحًا للتطبيقات لأغراض تشمل جذب الانتباه من خلال نغمات الرنين والمنبّهات والإشعارات والملاحظات العامة التي تعمل باللمس.

    إذا لم تكن عمليات تنفيذ الجهاز تتضمّن مشغّلاً حسّيًا للغرض العام، فإنه:

    • [7.10/C] يجب أن تعرض القيمة "false" في Vibrator.hasVibrator().

    إذا كانت عمليات تنفيذ الجهاز تتضمّن مشغّلاً حسّيًا واحدًا على الأقل لأغراض عامة، فإنّه:

    إذا كانت عمليات تنفيذ الأجهزة تتبع ربط الثوابت الملموسة، فإنها:

    يُرجى الاطّلاع على الفقرة 2.2.1 لمعرفة المتطلبات الخاصة بالأجهزة.

‫9. توافق نموذج الأمان

  • 9.1. الأذونات:

    عرض النسخة السابقة

    عمليات تنفيذ الأجهزة:

    • يجب أن يكون لـ [C-0-4] تنفيذ واحد فقط لواجهتي المستخدم.

    في حال تثبيت عمليات تنفيذ على الجهاز مسبقًا لأي حِزم تحمل أيًا من أدوار System UI Intelligence أو System Ambient Audio Intelligence أو System Audio Intelligence أو System Notification Intelligence أو System Text Intelligence أو System Visual Intelligence، ستكون الحِزم:

    • [C-4-1] يجب أن تستوفي جميع المتطلبات الموضّحة لعمليات تنفيذ الأجهزة في الأقسام "9.8.6 تسجيل المحتوى" "9.8.6 البيانات على مستوى نظام التشغيل والبيانات المحيطية و9.8.15 عمليات تنفيذ واجهة برمجة التطبيقات في وضع الحماية"

    • [C-4-2] يجب ألا يكون لديه إذن android.permission.INTERNET. وهذا أكثر صرامة من تلك الموصى بها بشدة والمذكورة في البند 9.8.6.
    • [C-4-3] يجب ألا يتم ربطها بالتطبيقات الأخرى، باستثناء تطبيقات النظام التالية: البلوتوث وجهات الاتصال والوسائط والاتصال الهاتفي وواجهة SystemUI والمكونات التي توفر واجهات برمجة تطبيقات الإنترنت. وأكثر صرامة من تلك الموصى بها بشدة والمذكورة في القسم 9.8.6.

    إذا كانت عمليات تنفيذ الأجهزة تتضمّن تطبيقًا تلقائيًا متوافقًا مع VoiceInteractionService، سيتم ما يلي:

    • [C-5-1] يجب ألا يتم منح ACCESS_FINE_LOCATION كإعداد تلقائي لهذا التطبيق.

  • 9.5. دعم متعدد المستخدمين:

    عرض النسخة السابقة

    إذا أدت عمليات تنفيذ الجهاز إلى إنشاء ملف شخصي إضافي للمستخدم تمت مناقشته أعلاه، فإنه:

    • [C-4-5] يجب أن يميز بصريًا رموز التطبيقات المزدوجة عند تقديم الرموز للمستخدمين.
    • [C-4-6] يجب أن تتوفر للمستخدمين إمكانية حذف بيانات الملف الشخصي للاستنساخ بالكامل.
    • [C-4-7] يجب إلغاء تثبيت جميع تطبيقات "استنساخ" وحذف أدلة بيانات التطبيقات الخاصة ومحتواها وحذف بيانات الملف الشخصي في "استنساخ" عندما يختار المستخدم حذف بيانات الملف الشخصي في Clone بالكامل.
    • أن تطلب من المستخدم حذف بيانات "الملف الشخصي للاستنساخ" بالكامل عند حذف آخر تطبيق استنساخ
    • [C-4-8] يجب أن تبلّغ المستخدم بأنّه سيتم حذف بيانات التطبيق عند إلغاء تثبيت التطبيق المستنسخ، أو توفير خيار للمستخدمين للاحتفاظ ببيانات التطبيق عند إلغاء تثبيته من الجهاز.
    • [C-4-9] يجب حذف أدلة بيانات التطبيق الخاصة ومحتواها، عندما يختار المستخدم حذف البيانات أثناء إلغاء التثبيت.

    • [C-4-1] يجب أن تسمح تطبيقات المستخدم الأساسي على الجهاز بمعالجة الأهداف التالية التي تنشأ من الملف الشخصي الإضافي:

      • Intent.ACTION_VIEW
      • Intent.ACTION_SENDTO
      • Intent.ACTION_SEND
      • Intent.ACTION_EDIT
      • Intent.ACTION_INSERT
      • Intent.ACTION_INSERT_OR_EDIT
      • Intent.ACTION_SEND_MULTIPLE
      • Intent.ACTION_PICK
      • Intent.ACTION_GET_CONTENT
      • MediaStore.ACTION_IMAGE_CAPTURE
      • MediaStore.ACTION_VIDEO_CAPTURE
    • يجب أن يكتسب [C-4-2] جميع قيود سياسة الجهاز وقيود المستخدم المحددة(القائمة أدناه) المطبقة على المستخدم الأساسي للجهاز على هذا الملف الشخصي الإضافي للمستخدم.

    • [C-4-3] يجب ألا يسمح بكتابة جهات الاتصال من هذا الملف الشخصي الإضافي إلا من خلال الأغراض التالية:

    • [C-4-4] يجب ألا يحتوي على عمليات مزامنة جهات الاتصال قيد التشغيل للتطبيقات التي تعمل في الملف الشخصي الإضافي للمستخدم هذا.

    • [C-4-14] يجب أن يمتلك إذنًا منفصلاً وإدارة مساحة التخزين للتطبيقات التي يتم تشغيلها في هذا الملف الشخصي الإضافي

    • [C-4-5] يجب السماح للتطبيقات في الملف الشخصي الإضافي التي تحتوي على نشاط مشغّل التطبيقات فقط بالوصول إلى جهات الاتصال التي يمكن الوصول إليها من خلال الملف الشخصي للمستخدم الرئيسي.

  • 9.7. ميزات الأمان:

    عرض النسخة السابقة

    تكنولوجيا "أمان الذاكرة" هي تكنولوجيا تخفِّض على الأقل فئات الأخطاء التالية التي تزيد احتمالية حدوث أخطاء بنسبة تزيد عن %90 في التطبيقات التي تستخدم خيار بيان android:memtagMode:

    • فائض سعة المخزن المؤقت
    • الاستخدام بعد الفترة المجانية
    • مجانية مزدوجة
    • بدون أي تدخُّل (خالٍ من مؤشر غير malloc)

    عمليات تنفيذ الأجهزة:

    • [C-SR-15] يُنصح بشدة بضبطها "ro.arm64.memtag.bootctl_supported"

    في حال ضبط عمليات تنفيذ الجهاز لخاصية النظام ro.arm64.memtag.bootctl_supported على "صحيح"، سيحدث ما يلي:

    • [C-3-1] يجب أن تسمح لخاصية النظام arm64.memtag.bootctl بقبول قائمة مفصولة بفواصل من القيم التالية، مع تطبيق التأثير المطلوب في عملية إعادة التشغيل اللاحقة التالية:

      • memtag: تم تفعيل تقنية "أمان الذاكرة" على النحو المحدّد أعلاه.
      • memtag-once: يتم تفعيل تكنولوجيا "أمان الذاكرة" كما هو محدّد أعلاه بشكل مؤقت، ويتم إيقافها تلقائيًا عند إعادة التشغيل التالية.
      • memtag-off: تم إيقاف تقنية "أمان الذاكرة" على النحو المحدّد أعلاه.
    • [C-3-2] يجب أن يسمح لمستخدم واجهة الأوامر بضبط arm64.memtag.bootctl.

    • [C-3-3] يجب أن يسمح أي عملية بقراءة arm64.memtag.bootctl.

    • [C-3-4] يجب ضبط arm64.memtag.bootctl على الحالة المطلوبة حاليًا عند التشغيل، يجب أيضًا تعديل الموقع، إذا كان تنفيذ الجهاز يسمح بتعديل الحالة بدون تغيير خاصية النظام.

    • [C-SR-16] يُنصح بشدة بعرض إعداد مطوّر برامج يضبط علامة الجهاز مرة واحدة ويعيد تشغيل الجهاز. باستخدام برنامج إقلاع متوافق، يستوفي "المشروع المفتوح المصدر لنظام Android" المتطلبات أعلاه من خلال بروتوكول برنامج الإقلاع MTE.

    • [C-SR-17] يُنصح بشدة بعرض إعداد في قائمة "إعدادات الأمان" يسمح للمستخدم بتفعيل memtag.

  • 9.8.2. التسجيل:

    عرض النسخة السابقة

    عمليات تنفيذ الأجهزة:

    • يجب أن يعرض [C-0-2] تحذيرًا من المستخدم ويحصل على موافقة صريحة من المستخدم يسمح بالتقاط أي معلومات حساسة يتم عرضها على شاشة المستخدميتضمن الرسالة نفسها تمامًا كما في بروتوكول AOSP متى كل مرة في كل مرة يتم فيها تسجيل الشاشة أو تفعيلها MediaProjection.createVirtualDisplay()VirtualDeviceManager.createVirtualDisplay() يجب ألّا يتيح للمستخدمين إمكانية إيقاف عرض موافقة المستخدم في المستقبل.

    • [C-SR-1] يُنصح بشدة بعرض تحذير المستخدِم الذي قد يكون مطابقًا تمامًا للرسالة التي تم تنفيذها في AOSP، ولكن يمكن تغييرها طالما أنّ الرسالة تحذّر المستخدم بوضوح من تسجيل أي معلومات حساسة على شاشة المستخدم.

    • [C-0-4] يجب ألا تمنح المستخدمين إمكانية إيقاف الطلبات المستقبلية بموافقة المستخدم على التقاط الشاشة، إلا إذا تم بدء الجلسة بواسطة تطبيق نظام سمح المستخدم له associate() باستخدام android.app.role.COMPANION_DEVICE_APP_STREAMING أو android.app.role.COMPANION_DEVICE_NEARBY_DEVICE_STREAMING الملف الشخصي للجهاز.

  • 9.8.6. البيانات على مستوى نظام التشغيل والبيانات في الخلفية: تمت إعادة تسمية هذا القسم من التقاط المحتوى و"البحث في التطبيقات" إلى البيانات على مستوى نظام التشغيل والبيانات المحيطة.

    عرض النسخة السابقة

    يتيح Android، من خلال واجهات برمجة تطبيقات النظام ContentCaptureService أو AugmentedAutofillService أو AppSearchGlobalManager.query، أو من خلال وسائل ملكية أخرى، آلية لعمليات تنفيذ الأجهزة لرصد تفاعلات بيانات التطبيق التالية بين التطبيقات والمستخدم البيانات الحسّاسة:

    • أي شاشة أو بيانات أخرى تم إرسالها من خلال AugmentedAutofillService إلى النظام
    • أي شاشة أو بيانات أخرى يمكن الوصول إليها من خلال واجهة برمجة التطبيقات Content Capture.
    • أي بيانات شاشة أو بيانات أخرى يمكن الوصول إليها عبر FieldClassificationService API
    • أي بيانات تطبيقات يتم تمريرها إلى النظام من خلال واجهة برمجة تطبيقات AppSearchManager ويمكن الوصول إليها من خلال AppSearchGlobalManager.query.

    • أي أحداث أخرى يوفّرها تطبيق ما للنظام من خلال واجهة برمجة التطبيقات Content Capture أو واجهة برمجة التطبيقات AppSearchManager أو واجهة برمجة تطبيقات Android وواجهة برمجة تطبيقات خاصة تعمل بنفس القدرات

    • البيانات الصوتية التي تم الحصول عليها نتيجة استخدام SpeechRecognizer#onDeviceSpeechRecognizer() من خلال ميزة "التعرّف على الكلام"
    • بيانات صوتية يتم الحصول عليها في الخلفية (باستمرار) من خلال AudioRecord أو SoundTrigger أو واجهات برمجة تطبيقات صوتية أخرى، ولا تؤدي إلى ظهور مؤشر مرئي للمستخدم
    • بيانات الكاميرا التي يتم الحصول عليها في الخلفية (باستمرار) من خلال CameraManager أو واجهات برمجة تطبيقات الكاميرا الأخرى، ولا تؤدي إلى ظهور مؤشر مرئي للمستخدم

    إذا رصدت عمليات تنفيذ الأجهزة أيًا من البيانات المذكورة أعلاه، سيحدث ما يلي:

    • [C-1-3] يجب أن يرسل فقط جميع هذه البيانات والسجلّ خارج الجهاز باستخدام آلية الحفاظ على الخصوصية، إلا في حال الحصول على موافقة صريحة من المستخدم في كل مرة تتم فيها مشاركة البيانات. يتم تعريف آلية الحفاظ على الخصوصية بأنها "تلك التي تسمح فقط بالتحليل بشكل مجمّع وتمنع مطابقة الأحداث المسجّلة أو النتائج المشتقة للمستخدمين الفرديين" لمنع أي بيانات لكل مستخدم من التدقيق فيها (على سبيل المثال، تنفيذها باستخدام تكنولوجيا خصوصية تفاضلية مثل RAPPOR).

    • [C-1-5] يجب ألّا تتم مشاركة هذه البيانات مع مكوّنات نظام التشغيل الأخرى التي لا تتّبع المتطلبات الموضّحة في الفقرة الحالية (9.8.6 التقاط المحتوى البيانات على مستوى نظام التشغيل والبيانات على مستوى نظام التشغيل)، ويُستثنى من ذلك الحصول على موافقة صريحة من المستخدم في كل مرة تتم فيها مشاركة هذه البيانات. ما لم يتم إنشاء هذه الوظيفة كواجهة برمجة تطبيقات حزمة تطوير البرامج (SDK) لنظام التشغيل Android (AmbientContext، HotwordDetectionService).

    • يجب أن يتمكّن [C-1-6] من السماح للمستخدم بمحو هذه البيانات على النحو الذي يجمعه ContentCaptureService تنفيذه أو وسائل التنفيذ الخاصة به إذا عند تخزين البيانات بأي شكل على الجهاز. إذا اختار المستخدم محو البيانات، يجب إزالة جميع البيانات السابقة التي تم جمعها.

    • [C-SR-3] يُنصَح بشدة بأن يتم تنفيذها باستخدام واجهة برمجة التطبيقات Android SDK API أو مستودع مشابه مفتوح المصدر يملكه المصنّع الأصلي للجهاز، و / أو تنفيذها من خلال عملية تنفيذ في وضع الحماية (يُرجى الاطّلاع على عمليات تنفيذ واجهة برمجة التطبيقات 9.8.15 Sandboxed API)

    يوفر Android، من خلال SpeechRecognizer#onDeviceSpeechRecognizer() إمكانية التعرف على الكلام على الجهاز، بدون إشراك الشبكة. يجب أن يتّبع أي استخدام لأداة SpeechRecognizer على الجهاز السياسات الموضّحة في هذا القسم.

  • 9.8.10. تقرير خطأ في الاتصال:

    عرض النسخة السابقة

    إذا كانت عمليات تنفيذ الأجهزة تشير إلى علامة ميزة android.hardware.telephony، سيحدث ما يلي:

    • [C-1-4] يجب أن تحتوي التقارير التي تم إنشاؤها باستخدام "BUGREPORT_MODE_TELEPHONY" على المعلومات التالية على الأقل:
      • تفريغ SubscriptionManagerService

  • 9.8.14. مدير بيانات الاعتماد: تمت إزالته

  • 9.8.15. عمليات تنفيذ واجهة برمجة التطبيقات Sandboxed API: قسم جديد

    عرض النسخة السابقة

    يوفّر Android من خلال مجموعة من واجهات برمجة التطبيقات المفوَّضة آلية لمعالجة البيانات الآمنة على مستوى نظام التشغيل والبيانات المحيطة. ويمكن تفويض هذه المعالجة إلى حزمة APK مثبَّتة مسبقًا بإمكانية وصول مميزة وإمكانيات اتصال أقل، تُعرف باسم تنفيذ واجهة برمجة التطبيقات في وضع الحماية.

    أي تنفيذ لواجهة برمجة التطبيقات Sandboxed API:

    • [C-0-1] يجب ألا يطلب إذن INTERNET.
    • [C-0-2] يجب ألا يصل إلى الإنترنت إلا من خلال واجهات برمجة التطبيقات المنظَّمة المدعومة بعمليات تنفيذ مفتوحة المصدر ومتاحة للجميع باستخدام آليات الحفاظ على الخصوصية، أو بشكل غير مباشر عبر واجهات برمجة تطبيقات Android SDK. يتم تعريف آلية الحفاظ على الخصوصية على أنّها "تلك التي تسمح فقط بالتحليل المجمّع وتمنع مطابقة الأحداث المسجّلة أو النتائج المشتقة للمستخدمين الفرديين"، وذلك لمنع أي بيانات لكل مستخدم قابلة للتأمل (على سبيل المثال، تنفيذها باستخدام تكنولوجيا خصوصية تفاضلية مثل RAPPOR).
    • [C-0-3] يجب أن يفصل بين الخدمات ومكونات النظام الأخرى (على سبيل المثال، عدم ربط الخدمة أو معرفات عملية المشاركة) باستثناء ما يلي:
      • الاتصالات الهاتفية وجهات الاتصال وواجهة مستخدم النظام والوسائط
    • [C-0-4] يجب ألا يسمح للمستخدمين باستبدال الخدمات بتطبيق أو خدمة قابلة للتثبيت من قِبل المستخدم
    • [C-0-5] يجب أن يسمح فقط للخدمات المثبتة مسبقًا بتسجيل هذه البيانات. ما لم يتم تضمين إمكانية الاستبدال في AOSP (على سبيل المثال، لتطبيقات "المساعد الرقمي").
    • [C-0-6] يجب ألا تسمح لأي تطبيقات أخرى غير آلية الخدمات المثبَّتة مسبقًا بالحصول على مثل هذه البيانات. ما لم يتم تنفيذ إمكانية الالتقاط هذه باستخدام واجهة برمجة التطبيقات Android SDK API
    • [C-0-7] يجب أن تتوفر قدرة المستخدم على إيقاف الخدمات.
    • [C-0-8] يجب ألا يتم إغفال قدرة المستخدم على إدارة أذونات Android التي تمتلكها الخدمات واتّباع نموذج أذونات Android كما هو موضّح في القسم 9.1. الإذن.

  • 9.8.16. بيانات الصوت والكاميرا المستمرة: قسم جديد

    عرض النسخة السابقة

    بالإضافة إلى المتطلبات الموضّحة في الفقرة 9.8.2 للتسجيل، والبيانات على مستوى نظام التشغيل 9.8.6 والبيانات المحيطة، وعمليات تنفيذ واجهة برمجة التطبيقات 9.8.15 Sandboxed API، وعمليات التنفيذ التي تستخدم البيانات الصوتية التي يتم الحصول عليها في الخلفية (مستمرًا) من خلال AudioRecord أو SoundTrigger أو واجهات برمجة تطبيقات الصوت الأخرى أو بيانات الكاميرا التي يتم الحصول عليها في الخلفية (باستمرار) من خلال تطبيق CameraManager أو واجهات برمجة تطبيقات الكاميرا الأخرى:

    • يجب أن يفرض [C-0-1] مؤشرًا مقابلاً (الكاميرا و/أو الميكروفون بحسب فقرة 9.8.2 التسجيل)، إلا في الحالات التالية:
      • يتم تنفيذ إذن الوصول هذا في تنفيذ Sandboxed (يمكنك الاطّلاع على تنفيذ واجهة برمجة التطبيقات 9.8.15 Sandboxed API) من خلال حزمة تتضمّن دورًا واحدًا أو أكثر من الأدوار التالية:System UI Intelligence (معلومات واجهة المستخدم الخاصة بالنظام) أو System Ambient Audio Intelligence أو الذكاء الصوتي في النظام أو تحليل إشعارات النظام أو الذكاء النصي للنظام أو الذكاء الاصطناعي للنظام.
      • يتم الوصول إلى الخدمات من خلال وضع الحماية وتنفيذه وتنفيذه من خلال آليات في AOSP (HotwordDetectionService وWearableSensingService وVisualQueryDetector).
      • يتم الوصول إلى الصوت لأغراض تقديم المساعدة من خلال تطبيق "المساعد الرقمي" الذي يوفّر "SOURCE_HOTWORD" كمصدر صوت.
      • يتم الوصول بواسطة النظام وتنفيذه باستخدام رمز مفتوح المصدر.
    • [C-SR-1] يُنصح بشدة بطلب موافقة المستخدم على كل وظيفة تستخدم هذه البيانات، وأن يتم إيقافه تلقائيًا
    • [C-SR-2] يُنصح بشدة بتطبيق الطريقة نفسها (مثلاً، اتّباع القيود الموضّحة في 9.8.2 التسجيل، 9.8.2 البيانات على مستوى نظام التشغيل وبيانات الصوت المحيط)، وعمليات تنفيذ واجهة برمجة التطبيقات 9.8.15 Sandboxed API وبيانات الكاميرا والصوت المستمرة (9.8.16) على بيانات الكاميرا الواردة من جهاز قابل للارتداء عن بُعد.

    إذا تم توفير بيانات "الكاميرا" من جهاز قابل للارتداء عن بُعد وتم الوصول إليها من خلال نموذج غير مشفَّر خارج نظام التشغيل Android أو من خلال تنفيذ في وضع الحماية أو من خلال وظيفة مضمَّنة في "وضع الحماية" تم إنشاؤها من خلال "WearableSensingManager"، يجب مراعاة ما يلي:

    • [C-1-1] يجب أن يشير الجهاز القابل للارتداء عن بُعد إلى عرض مؤشر إضافي هناك.

    إذا كانت الأجهزة توفّر إمكانية التفاعل مع تطبيق "المساعد الرقمي" بدون الكلمة الرئيسية المحدّدة (إما التعامل مع طلبات بحث عامة للمستخدمين أو تحليل حضور المستخدمين من خلال الكاميرا):

    • [C-2-1] يجب أن يتأكّد من أنّ عملية التنفيذ هذه مقدَّمة من خلال حزمة لديها دور android.app.role.ASSISTANT.
    • [C-2-2] يجب أن يضمن هذا التنفيذ استخدام واجهات برمجة تطبيقات Android HotwordDetectionService و/أو VisualQueryDetectionService.

  • 9.8.17. القياس عن بُعد: قسم جديد

    عرض النسخة السابقة

    يخزِّن Android سجلّات التطبيقات والنظام باستخدام واجهات برمجة التطبيقات InsightsLog API. تتم إدارة هذه السجلات عبر واجهات برمجة تطبيقات InsightsManager التي يمكن استخدامها من خلال تطبيقات النظام المتميزة.

    يوفّر "مدير الإحصاءات" أيضًا وسيلة لجمع البيانات المصنّفة على أنّها حسّاسة للخصوصية من الأجهزة باستخدام آلية للحفاظ على الخصوصية. وعلى وجه التحديد، توفِّر واجهة برمجة التطبيقات StatsManager::query إمكانية طلب البحث عن فئات المقاييس المشروطة المحددة في سجلّ الإحصاءات.

    يمكن إجراء أي استعلام عن التنفيذ وجمع المقاييس المحظورة من StatsManager:

    • يجب أن يكون [C-0-1] هو التطبيق أو التنفيذ الوحيد على الجهاز ولديه إذن READ_RESTRICTED_STATS.
    • يجب أن يرسل [C-0-2] بيانات القياس عن بُعد وسجلّ الجهاز فقط باستخدام آلية الحفاظ على الخصوصية. يتم تعريف آلية الحفاظ على الخصوصية على أنّها "تلك التي تسمح فقط بالتحليل بشكل مجمّع وتمنع مطابقة الأحداث المسجّلة أو النتائج المشتقة للمستخدمين الفرديين"، لمنع أي بيانات لكل مستخدم من الاطّلاع على هذه البيانات (على سبيل المثال، تنفيذها باستخدام تكنولوجيا خصوصية تفاضلية مثل RAPPOR).
    • [C-0-3] يجب ألا تربط هذه البيانات بأي هوية مستخدم (مثل الحساب) على الجهاز.
    • [C-0-4] يجب ألا تتم مشاركة هذه البيانات مع مكوّنات نظام التشغيل الأخرى التي لا تتّبع المتطلبات الموضّحة في القسم الحالي (9.8.17 الحفاظ على الخصوصية عن بُعد).
    • [C-0-5] يجب أن تتوفر للمستخدم إمكانية تفعيل أو إيقاف جمع بيانات القياس عن بُعد واستخدامها ومشاركتها للحفاظ على الخصوصية.
    • يجب أن يوفّر [C-0-6] للمستخدم إمكانية محو هذه البيانات التي يجمعها التنفيذ في حال تخزين البيانات بأي شكل على الجهاز. إذا اختار المستخدم محو البيانات، يجب عليه إزالة جميع البيانات المخزنة حاليًا على الجهاز.
    • [C-0-7] يجب أن يفصح عن تنفيذ بروتوكول الحفاظ على الخصوصية الأساسي في مستودع مفتوح المصدر.
    • [C-0-8 ]يجب فرض سياسات خروج البيانات في هذا القسم لحظر جمع البيانات في فئات المقاييس المحدودة المحدّدة في "سجلّ الإحصاءات".

  • 9.10. سلامة الجهاز:

    عرض النسخة السابقة

    عمليات تنفيذ الأجهزة

    إذا كان بإمكان عمليات تنفيذ الأجهزة التحقق من محتوى الملف في كل صفحة على حدة، سيتم عندها:

    • يتيح [C-0-3 C-2-1] التحقّق من محتوى الملف كتشفير ضد مفتاح موثوق به بدون قراءة الملف بأكمله.

    • [C-0-4 C-2-2] يجب ألا تسمح لطلبات القراءة على ملف محمي بنجاح عند عدم التحقق من المحتوى المقروء مقابل مفتاح موثوق وفقًا لما ورد في [C-2-1] الوارد أعلاه.

    • [C-2-4] يجب عرض المجموع الاختباري للملف في O(1) للملفات المفعّلة.

  • 9.11. المفاتيح وبيانات الاعتماد:

    عرض النسخة السابقة

    يتيح نظام تخزين مفاتيح Android لمطوّري التطبيقات إمكانية تخزين مفاتيح التشفير في إحدى الحاويات واستخدامها في عمليات التشفير من خلال KeyChain API أو واجهة برمجة تطبيقات Keystore. عمليات تنفيذ الأجهزة:

    • [C-0-3] يجب أن يحدّ من عدد محاولات المصادقة الأساسية التي تعذّر تنفيذها.
    • [C-SR-2] يُنصح بشدة بتنفيذ حدّ أقصى يبلغ 20 محاولة مصادقة أساسية فاشلة. وفي حال موافقة المستخدمين على الميزة وتفعيلها، يمكنك إجراء "إعادة ضبط على الإعدادات الأصلية" بعد تجاوز الحدّ الأقصى لعدد محاولات المصادقة الأساسية التي تعذّر تنفيذها.

    إذا كانت عمليات تنفيذ الأجهزة تضيف طرق المصادقة أو تعدلها لفتح قفل شاشة القفل إذا كانت تستند إلى سر معروف وتم استخدام طريقة مصادقة جديدة ليتم التعامل معها كطريقة آمنة لقفل الشاشة، يجب عندها:

    • [C-SR-3] يُنصح بشدة بأن يحتوي رقم التعريف الشخصي على 6 أرقام على الأقل، أو أن يتألف من قصور بـ 20 بت.
    • [C-2-1] يجب ألا يسمح رقم التعريف الشخصي الذي يكون طوله أقل من 6 أرقام بالإدخال التلقائي بدون تفاعل المستخدم لتجنّب الكشف عن طول رقم التعريف الشخصي.

  • 9.11.1. شاشة القفل الآمنة والمصادقة والأجهزة الافتراضية:

    عرض النسخة السابقة

    عمليات تنفيذ الأجهزة:

    • [C-0-1] يجب أن يحدّ من عدد محاولات المصادقة الأساسية التي تعذّر تنفيذها.
    • [C-SR-5] يُنصح بشدة بتنفيذ حدّ أقصى يبلغ 20 محاولة مصادقة أساسية فاشلة. وفي حال موافقة المستخدمين على الميزة وتفعيلها، يمكنك إجراء "إعادة الضبط على الإعدادات الأصلية" بعد تجاوز الحدّ الأقصى لعدد محاولات المصادقة الأساسية غير الناجحة.

    في حال ضبط عمليات تنفيذ الجهاز لرقم تعريف شخصي رقمي باعتباره طريقة المصادقة الأساسية الموصى بها، عندئذ:

    • [C-SR-6] يُنصح بشدة بأن يحتوي رقم التعريف الشخصي على 6 أرقام على الأقل، أو أن يتألف من قصور بـ 20 بت.
    • [C-SR-7] يُنصح بشدة بعدم السماح باستخدام رقم تعريف شخصي يقل طوله عن 6 أرقام بعدم السماح بإدخال رقم التعريف الشخصي تلقائيًا بدون تفاعل المستخدم لتجنّب الكشف عن طول رقم التعريف الشخصي.

    إذا كانت عمليات تنفيذ الأجهزة تتضمن شاشة قفل آمنة وتتضمن وكيلاً موثوقًا واحدًا أو أكثر يستخدم واجهة TrustAgentService System API، سيؤدّي ذلك إلى ما يلي:

    [C-7-8] يجب أن يواجه المستخدم إحدى طرق المصادقة الأساسية الموصى بها (مثل رقم التعريف الشخصي أو النقش أو كلمة المرور) مرة واحدة على الأقل كل 72 ساعة أو أقل إلا إذا كان الأمر يستنزف سلامة المستخدم (مثل تشتيت انتباه السائق).

    إذا كانت عمليات تنفيذ الأجهزة تسمح للتطبيقات بإنشاء شاشات افتراضية ثانوية وتتيح أحداث الإدخال المرتبطة، مثل عبر VirtualDeviceManager ولم يتم وضع علامة VIRTUAL_DISPLAY_FLAG_SECURE على الشاشات، سيتم إجراء ما يلي:

    [C-13-10] يجب أن توقِف تثبيت التطبيقات التي يتم بدؤها من الأجهزة الافتراضية.

  • 9.17. إطار عمل المحاكاة الافتراضية على Android:

    عرض النسخة السابقة

    إذا كان الجهاز يتوافق مع واجهات برمجة تطبيقات إطار عمل المحاكاة الافتراضية على Android (android.system.virtualmachine.*)، سينفّذ مضيف Android ما يلي:

    • يجب أن يتوافق [C-1-1] مع جميع واجهات برمجة التطبيقات المحدّدة في حزمة android.system.virtualmachine.
    • [C-1-2] يجب ألا يعدّل Android SELinux ونموذج الإذن لإدارة الأجهزة الافتراضية المحمية (pVM).

    • [C-1-3] يجب ألا يعدل القواعد أو يحذفها أو يستبدلها ضمن النظام/السياسة الواردين في "مشروع البرامج المفتوحة المصدر لنظام Android" (AOSP) ويجب أن تجمع السياسة مع كل قواعد "عدم السماح" الحالية.

    • [C-1-4] يجب السماح فقط بالتطبيقات الموقّعة من النظام الأساسي والتطبيقات المميزةيجب عدم السماح برمز غير موثوق به (مثل التطبيقات التابعة لجهات خارجية) لإنشاء وتشغيل جهاز افتراضي محمي pVM . ملاحظة: قد يتغير ذلك في إصدارات Android المستقبلية.

    • [C-1-5] يجب ألا يسمح للجهاز الافتراضي المحمي بجهاز افتراضي بتنفيذ رمز ليس جزءًا من صورة المصنع أو من تحديثاته. يجب عدم السماح بتشغيل أي محتوى لا يشمله برنامج "التشغيل المُتحقَّق منه من Android" (مثل الملفات التي تم تنزيلها من الإنترنت أو من مصدر غير معروف) في جهاز افتراضي محمي .

    • [C-1-5] يجب أن يسمح فقط لأداة pVM لا يمكن تصحيح الأخطاء بها بتنفيذ الرموز من صورة المصنع أو تحديثات النظام الأساسي الخاصة بها، والتي تتضمّن أيضًا أي تحديثات للتطبيقات الحاصلة على امتياز.

    إذا كان الجهاز يتوافق مع واجهات برمجة تطبيقات إطار عمل المحاكاة الافتراضية لنظام التشغيل Android (android.system.virtualmachine.*)، سيتم عندها تنفيذ أي مثيل من الجهاز الافتراضي المحمي لأجهزة افتراضية (pVM) :

    • [C-2-1] يجب أن يكون قادرًا على تشغيل جميع أنظمة التشغيل المتوفّرة في APEX للافتراضية في جهاز افتراضي محمي pVM .
    • [C-2-2] يجب ألا يسمح للجهاز الافتراضي المحمي بجهاز افتراضي بتشغيل نظام تشغيل غير موقَّع من جهة تنفيذ الجهاز أو مورّد نظام التشغيل.
    • [C-2-3] يجب عدم السماح لـ جهاز افتراضي محمي pVM بتنفيذ البيانات كرمز برمجي (على سبيل المثال، SELinux أبدًا لا يسمح بـ execmem).

    • [C-2-4] يجب ألا يعدّل أو يحذف أو يستبدل قواعد nonallow الحالية في النظام/sepolicy/microdroid المقدَّم في "المشروع المفتوح المصدر لنظام Android" (AOSP).

    • [C-2-5] يجب أن يستخدم الآلة الافتراضية المحمية pVM آليات الدفاع العميق (مثل SELinux للأجهزة الافتراضية) حتى مع أنظمة التشغيل غير المجهرية.
    • [C-2-6] يجب التأكد من تعذُّر تشغيل الجهاز الافتراضي (pVM) ورفض تشغيل البرامج الثابتة إذا لم يتمكّن من التحقّق من صحة الصور الأولية التي لن يتم التحقّق منها عند تشغيل الجهاز الافتراضي (VM). يجب إثبات الملكية داخل الجهاز الافتراضي (VM).
    • [C-2-7] يجب التأكّد من تعذُّر تشغيل الجهاز الافتراضي (pVM) ورفض البرامج الثابتة في حال تم اختراق سلامة المثيل.img.

    إذا أتاح الجهاز استخدام واجهات برمجة تطبيقات إطار عمل المحاكاة الافتراضية على Android (android.system.virtualmachine.*)، سينفّذ برنامج Hypervisor (مراقب الأجهزة الظاهرية) ما يلي:

    • [C-3-1] يجب التأكّد من أنّه لا يمكن الوصول إلى صفحات الذاكرة التي يملكها بشكل حصري من خلال جهاز افتراضي (سواء كان جهاز افتراضي (pVM) أو جهاز افتراضي مضيف) إلا من خلال الجهاز الافتراضي نفسه أو برنامج Hypervisor (مراقب الأجهزة الظاهرية)، وليس من خلال الأجهزة الافتراضية الأخرى، سواء كانت محمية أو غير محمية. يجب ألا يتم السماح لأي جهاز افتراضي بالوصول إلى صفحة تابعة لكيان آخر (مثل جهاز افتراضي للأجهزة الجوّالة (PVM) أو برنامج Hypervisor (مراقب الأجهزة الظاهرية))، ما لم يشارك مالك الصفحة صراحةً. ويشمل ذلك الجهاز الافتراضي (VM) الخاص بالمضيف. وينطبق ذلك على أذونات الوصول إلى كل من وحدة المعالجة المركزية (CPU) ومنطقة السوق المحددة.
    • [C-3-2] يجب حجب بيانات الصفحة بعد استخدامها بواسطة pVM وقبل إعادتها إلى المضيف (على سبيل المثال، تلف الجهاز).
    • [C-3-3SR-1] يُنصَح بشدة بالتأكّد من يجب أن يضمن تحميل البرامج الثابتة للأجهزة الافتراضية (pVM) وتنفيذها قبل أي رمز في جهاز افتراضي (pVM).
    • [C-3-4] يجب التأكّد من أنّ كل جهاز افتراضي يشتق مفتاح سرّي لكل جهاز افتراضي (VM) لا يمكن الحصول عليه إلّا من خلال مثيل VM المحدَّد والتغييرات التي يتم إجراؤها عند إعادة ضبط الجهاز على الإعدادات الأصلية وإجراء الاتصال عبر الهواء (OTA).

    إذا كان الجهاز يتيح استخدام واجهات برمجة التطبيقات الخاصة بإطار عمل المحاكاة الافتراضية على Android، عليك تنفيذ ما يلي في جميع المجالات:

    • [C-4-1] يجب ألا يتم توفير وظائف لجهاز افتراضي يتيح تجاوز نموذج أمان Android.

    إذا كان الجهاز يتيح استخدام واجهات برمجة التطبيقات لإطار عمل المحاكاة الافتراضية على Android، يجب مراعاة ما يلي:

    • يجب أن يكون [C-5-1] قادرًا على إتاحة ميزة "التجميع المعزول" ولكن قد يوقِف ميزة "التجميع المعزول" في عملية شحن الجهاز لتحديث بيئة تشغيل ART.

    إذا كان الجهاز يتيح استخدام واجهات برمجة تطبيقات إطار العمل الافتراضي على Android، يجب اتّباع الخطوات التالية في ما يخصّ "إدارة المفاتيح":

    • [C-6-1] يجب أن جذر سلسلة DICE في نقطة لا يمكن للمستخدم تعديلها، حتى على الأجهزة غير المقفلة. (للتأكد من عدم انتحاله).

    • [C-SR-26-2] يُنصَح بشدة باستخدام DICE كآلية اشتقاق سر لكل جهاز افتراضي. يجب استخدام DICE بشكل صحيح، أي توفير القيم الصحيحة

الرجوع إلى أعلى الصفحة