توضح مجموعة الأذونات الجديدة في Android P متى تريد التطبيقات قراءة سجل المكالمات أو أرقام الهواتف الخاصة بك حتى تعرف ما تفعله التطبيقات بالضبط.
Android Developer Preview 3 (Android P Beta 2) انخفض للتوومعها يأتي عدد من التغييرات، معظمها تحت غطاء المحرك. على الرغم من وجود بعض التغييرات التي يواجهها المستخدم، إلا أن جميع التغييرات تقريبًا قيد الإعداد للإصدار النهائي. الجزء الأكبر من التحديث هو واجهات برمجة التطبيقات النهائية، مما يعني أنه يمكنك إنشاء تطبيق يستهدف الآن API 28 وAndroid P. في Developer Preview 3، تمت إضافة مجموعة أذونات جديدة. تتعلق مجموعة الأذونات هذه تحديدًا بسجل مكالمات Android، مما يعني أنه عندما يريد أحد التطبيقات قراءة سجل المكالمات الخاص بك أو أرقام الهواتف، سيتم عرض رسالة بارزة تواجه المستخدم تخبرهم بالضبط بنوع الوصول الذي يمنحونه للتطبيق.
أولاً، هذه هي السلاسل الجديدة التي سيراها المستخدم عند طلب أي إذن في مجموعة أذونات CALL_LOG الجديدة.
<stringname="permgroupdesc_calllog">read and write phone call logstring>
<stringname="permgrouprequest_calllog">Allow <b>%1$s</b> to access your phone call logs?string>
كيف سيؤثر هذا على التطبيقات الحالية؟ يستخدم Android مجموعات الأذونات للأذونات التي تم وضع علامة "خطيرة" عليها لإدارة مستوى الوصول الممنوح لأحد التطبيقات واختيار الرسالة التي سيتم عرضها للمستخدم. في السابق، تم عرض READ_CALL_LOG والأذونات الأخرى المتعلقة بسجل المكالمات كجزء من مربع الحوار العام "الوصول إلى ميزات الهاتف بالجهاز"، ولكن هذه الرسالة غامضة للغاية. ليس هذا فحسب، بل يمكن القول بأنه لا علاقة له بسجل مكالمات جهازك. قام Android P Developer Preview 3 بإعادة تجميع جميع الأذونات المتعلقة بسجل المكالمات في مجموعة جديدة تمامًا يُسمى بشكل مناسب CALL_LOG بحيث تظهر رسالة أكثر ملاءمة عند طلب التطبيق هو - هي.
ستحتاج التطبيقات إلى طلب أذونات CALL_LOG أو READ_CALL_LOG أو WRITE_CALL_LOG أو PROCESS_OUTGOING_CALLS بشكل صريح من CALL_LOG إذا كانوا بحاجة إلى الوصول إلى سجل المكالمات أو معالجة المكالمات الصادرة، وفقًا لوثائق معاينة مطور Android P. سيحتاج المطورون أيضًا إلى مراعاة الوقت الذي يرفض فيه المستخدم وصول التطبيق إلى معلومات سجل المكالمات.
يمكنك أيضًا الاطلاع على مجموعة الأذونات الجديدة المأخوذة من Android Framework الذي تم فك ترجمته أدناه.
<permission-groupandroid: description="@string/permgroupdesc_calllog"android: icon="@drawable/perm_group_phone_calls"android: label="@string/permgrouplab_calllog"android: name="android.permission-group.CALL_LOG"android: priority="450"android: request="@string/permgrouprequest_calllog"/>
<permissionandroid: description="@string/permdesc_accessImsCallService"android: label="@string/permlab_accessImsCallService"android: name="android.permission.ACCESS_IMS_CALL_SERVICE"android: protectionLevel="privileged|signature"/>
<permissionandroid: description="@string/permdesc_readCallLog"android: label="@string/permlab_readCallLog"android: name="android.permission.READ_CALL_LOG"android: permissionGroup="android.permission-group.CALL_LOG"android: protectionLevel="dangerous"/>
<permissionandroid: description="@string/permdesc_writeCallLog"android: label="@string/permlab_writeCallLog"android: name="android.permission.WRITE_CALL_LOG"android: permissionGroup="android.permission-group.CALL_LOG"android: protectionLevel="dangerous"/>
<permissionandroid: description="@string/permdesc_processOutgoingCalls"android: label="@string/permlab_processOutgoingCalls"android: name="android.permission.PROCESS_OUTGOING_CALLS"android: permissionGroup="android.permission-group.CALL_LOG"android: protectionLevel="dangerous"/>
المصدر: وثائق مطور Android P