يوفّر نظام التشغيل Android للمستخدمين الشفافية من خلال عرض مؤشرات الخصوصية لأنواع الوصول التالية:
الوصول إلى الكاميرا والميكروفون: يظهر المؤشر عندما يستخدم أحد التطبيقات مصدر بيانات خاصًا من خلال أذونات عمليات التطبيقات الخاصة بالكاميرا والميكروفون. للاطّلاع على متطلبات "العناية الواجبة بالعملاء" ذات الصلة، يُرجى الرجوع إلى 2.2.5. نموذج الأمان
الوصول إلى الموقع الجغرافي: يظهر المؤشر عندما يصل أحد التطبيقات إلى الموقع الجغرافي للجهاز. للاطّلاع على متطلبات CDD ذات الصلة، يُرجى الرجوع إلى 9.8.8. الموقع الجغرافي
ينقر المستخدمون على مؤشر لمعرفة التطبيقات التي وصلت إلى بياناتهم.
الاستخدامات النشطة والحديثة
تفرّق واجهة مستخدم Android بين الاستخدامات الجارية والاستخدامات الأخيرة:
في نظام التشغيل Android 17 أو الإصدارات الأحدث، تُعتبر عمليات استخدام الموقع الجغرافي نشطة إذا وضع النظام علامة عليها بأنّها قيد التشغيل، أو إذا لم يمرّ عليها أكثر من 10 ثوانٍ. بالنسبة إلى نقطة الموقع الجغرافي، يُعدّ الوصول نشطًا إذا كان التطبيق غير التابع للنظام يعمل في حالة المقدّمة.
في الإصدار 12 من نظام التشغيل Android أو الإصدارات الأحدث، يُعد استخدام الميكروفون والكاميرا نشطًا إذا كان النظام قد صنّفهما على أنّهما قيد التشغيل، أو إذا كان عمرهما أقل من خمس ثوانٍ.
تظهر رموز شريط الحالة في كل مرة يطلب فيها تطبيق الوصول إلى الميكروفون أو الكاميرا أو الموقع الجغرافي، وهي بيانات حساسة للمستخدم. يمكن للمستخدمين النقر على هذه الرموز والاطّلاع على التطبيقات التي تصل إلى الميكروفون أو الكاميرا أو الموقع الجغرافي أو مزيج من هذه العناصر. في ما يلي مثال على مؤشرات الاستخدام:
الشكل 1: مؤشرات الاستخدام التي تعرض الوصول النشط (أعلى يسار الشاشة)
تُعتبر إمكانية الوصول نشطة طالما أنّ المؤشرات تظهر. يظهر رمز أولاً، ثم يتحوّل إلى نقطة تظل ظاهرة إلى أن يتم إغلاق التطبيق أو تجاهله. عندما يفتح المستخدم "الإعدادات السريعة" ثم ينقر على المؤشرات، يظهر مربّع حوار يوضّح ما إذا كان التطبيق يستخدم الميكروفون أو الكاميرا أو الموقع الجغرافي أو مزيجًا من هذه العناصر.
يوضّح الشكل 2 مؤشرات الوصول النشط عند الوصول إلى البيانات خلال فترة النشاط المحدّدة من خلال تطبيق قيد التشغيل.
الشكل 2: مؤشرات الوصول النشط والأخير
تشير مؤشرات الوصول الحديث إلى أنّ أحد التطبيقات وصل إلى البيانات خلال آخر 15 ثانية (أو 20 ثانية لبيانات الموقع الجغرافي)، ولكن التطبيق ليس نشطًا. تظهر جميع التطبيقات النشطة في مربّع الحوار، ولكن يظهر تطبيق واحد فقط كمصدر للوصول الأخير، حتى عندما يصل أكثر من تطبيق إلى البيانات خلال إطار زمني سابق يتراوح بين 15 و20 ثانية. يتم عرض جميع التطبيقات التي وصلت إلى بيانات الموقع الجغرافي خلال الفترة الزمنية النشطة أو الأخيرة في مربّع الحوار. يظل عرض إذن الوصول متاحًا إلى أن يغلق المستخدم مربّع حوار الإشعار.
التسليم والتفعيل
يوفّر الصف PermissionManager طريقة لتعبئة مربّع الحوار (الموجود في واجهة مستخدم النظام). تتفاعل واجهة مستخدم النظام مع مفتاح تبديل إعدادات الجهاز privacy/mic_camera_indicators_enabled، وهذا المفتاح ضروري لأنّ هناك وسيلتَي عرض منفصلتَين: (1) العرض، ثم (2) التفعيل.
تدفّق العمليات
تتضمّن وظيفة "مؤشر الأذونات" ثلاثة أجزاء رئيسية:
- التطبيقات
- المؤشرات (التي تتعامل معها واجهة مستخدم النظام)
- طريقة لتحديد التطبيقات التي تستخدم البيانات
توفّر PermissionController الآلية اللازمة لتحديد التطبيقات التي تستخدم البيانات. تستمع واجهة مستخدم النظام إلى التطبيقات التي تستخدم البيانات الخاصة. تعرض واجهة مستخدم النظام رمزًا في شريط التنقل العلوي يتوافق مع الأذونات المستخدَمة. تعرِض PermissionController بيانات حول الاستخدامات عندما ينقر المستخدم على رمز.
الشكل 3: مسار مكونات النظام وعمليات الانتقال (واجهة المستخدم)
1 يطلب أحد التطبيقات بيانات خاصة من النظام.
2 يتحقّق النظام من الأذونات. في حال السماح بالأذونات، يرسل النظام إشعارًا إلى مقدّم البيانات، ويسجّل الاستخدام في عمليات التطبيق.
3 يقدّم مزوّد البيانات البيانات إلى التطبيق.
4-5 ينقر المستخدم على الرموز. تطلب واجهة مستخدِم النظام البيانات من
PermissionManagerوتعرض مربع الحوار للمستخدم.
تفاصيل العملية
تسجّل "عمليات التطبيقات" عمليات الوصول إلى واجهات برمجة التطبيقات المحمية بإذن وقت التشغيل، وتتتبّع حالة النشاط وعدد طلبات البيانات الفردية من واجهة برمجة التطبيقات، وتتفاعل مع الكاميرا والميكروفون والمؤشرات لتوضيح الحالات التي وصلت فيها التطبيقات إلى بيانات الصوت والكاميرا على أجهزة المستخدمين.
تستخدم التطبيقات الميكروفون أو الكاميرا أو الموقع الجغرافي من خلال استدعاء
AppOpsManager.startOpأوstopOpأوnoteOp. يؤدي ذلك إلى إنشاء سجلّات عمليات التطبيق في خادم النظام. في الإصدار 17 والإصدارات الأحدث، يستخدم مؤشر الموقع الجغرافي أيضًا سجلات عمليات التطبيق هذه.تستمع واجهة مستخدم النظام إلى عمليات التطبيقات الجديدة باستخدام أدوات الاستماع
AppOpsManager.OnOpActiveChangedInternalListenerوOnOpNotedListener. عندما يصل استخدام جديد (من خلال طلب إلىstartOpأوnoteOp)، تتحقّق واجهة مستخدم النظام من أنّ الاستخدام من خلال تطبيق نظام:إذا تحقّقت واجهة مستخدم النظام من استخدام تطبيق النظام، وكان الاستخدام للميكروفون، ستتحقّق واجهة مستخدم النظام مما إذا كان الميكروفون مكتومًا.
إذا تحقّقت واجهة مستخدم النظام من استخدام تطبيق غير تابع للنظام (وتحقّقت من أنّ الميكروفون غير مكتوم في حال استخدامه، ومن أنّ الكاميرا مفعّلة في حال استخدامها)، ستعرض واجهة المستخدم رمزًا يشير إلى هذا الاستخدام.
إذا تحقّقت واجهة مستخدم النظام من استخدام تطبيق غير تابع للنظام، ستعرض رمزًا يعكس هذا الاستخدام، شرط أن تكون أزرار التبديل ذات الصلة نشطة:
- بالنسبة إلى الميكروفون: تمت إعادة صوت الميكروفون.
- بالنسبة إلى الكاميرا: تم تفعيل الكاميرا.
- بالنسبة إلى الموقع الجغرافي: يجب أن يكون التطبيق قيد التشغيل في المقدّمة.
إذا تلقّت واجهة مستخدم النظام noteOp، التي ليس لها مدة، ستعرض الرمز لمدة 5 ثوانٍ على الأقل (10 ثوانٍ للموقع الجغرافي). بخلاف ذلك، سيظهر الرمز إما إلى أن يتلقّى stopOp، أو لمدة 5 أو 10 ثوانٍ كحد أدنى، أيهما أطول. عندما ينقر المستخدم على رمز، يتم بدء إجراء يؤدي إلى PermissionController لبدء مربع الحوار.
تحمّل PermissionController جميع بيانات الاستخدام الحديثة للميكروفون والكاميرا والموقع الجغرافي. ويتحقّق مما إذا كان أي من هذه التطبيقات قيد التشغيل أو كان قيد التشغيل خلال الإطار الزمني الذي حدّدته واجهة مستخدم النظام (15 ثانية للميكروفون أو الكاميرا، و20 ثانية للموقع الجغرافي). وفي حال العثور على تطابق، سيتم عرض اسم التطبيق والأذونات المستخدَمة.
يجب أن تنفّذ خدمة الاتصال عبر الهاتف استخدام الأذونات (لإتاحة حزمة الميكروفون المنفصلة المستخدَمة في المكالمات الهاتفية)، وذلك أثناء العمل مع تطبيق "بحث Google" على Android (AGSA) وخدمات Google للأجهزة الجوّالة.