تغييرات إطار عمل التوافق (Android 11)

توضّح هذه الصفحة كل تغيير في السلوك المؤثر في التطبيق تمت إضافته إلى إطار عمل التوافق في Android 11 (المستوى 30 من واجهة برمجة التطبيقات). استخدِم هذه القائمة إلى جانب خيارات المطوّرين وأوامر ADB لاختبار تطبيقك وتصحيح الأخطاء أثناء الاستعداد لاستهداف الإصدار Android 11.

ADD_CONTENT_OBSERVER_FLAGS

رقم تعريف التغيير: 150939131

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android، هناك حمل زائد جديد لواجهة برمجة التطبيقات onChange(boolean, Uri, int) يتضمّن وسيطة flags بعدد صحيح.

هذه الطريقة الجديدة هي بديل متاح للجميع لحزمة تطوير البرامج (SDK) للتطبيقات التي تستخدم طريقة التحميل الزائد onChange() التي لا تتضمّن حزمة SDK والتي تتضمّن وسيطة userId بعدد صحيح.

ADMIN_APP_password_COMPLEXITY

رقم تعريف التغيير: 123562444

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

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

بالإضافة إلى ذلك، عندما يقلّل تطبيق مشرف يستهدف الإصدار 11 من نظام التشغيل Android من جودة كلمة المرور، تتم إعادة ضبط أي متطلبات حالية لكلمة المرور لم تعد سارية على قيمها التلقائية.

APP_DATA_DIRECTORY_ISOLATION

رقم تعريف التغيير: 143937733

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

لن تتمكّن التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android من الوصول إلى الملفات في أدلة البيانات الخاصة لأي تطبيق، بغض النظر عن إصدار حزمة تطوير البرامج (SDK) المستهدَف للتطبيق الآخر.

للحصول على مزيد من المعلومات، راجع الوصول إلى الأدلة الخاصة.

اسم نقطة الوصول (APN_READING_Permission_change_ID)

رقم تعريف التغيير: 124107808

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android، يتطلب الوصول إلى قاعدة بيانات APN الآن إذن Manifest.permission.WRITE_APN_SETTINGS.

لمزيد من المعلومات حول هذا التغيير، يمكنك الاطّلاع على تم تقييد إذن الوصول للقراءة في قاعدة بيانات APN.

BACKGROUND_RATIONALE_CHANGE_ID

رقم تعريف التغيير: 147316723

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

يجب أن تقدّم التطبيقات الآن سببًا صالحًا في كل مرة تطلب فيها الوصول إلى الموقع الجغرافي للجهاز في الخلفية.

لمعرفة المزيد من المعلومات حول هذا التغيير، يُرجى الاطّلاع على الدليل حول كيفية الوصول إلى الموقع الجغرافي في الخلفية في نظام التشغيل Android 11 الذي يناقش تغييرات الخصوصية المتعلّقة بالموقع الجغرافي في نظام التشغيل Android 11.

CALLBACK_ON_CLEAR_change

رقم تعريف التغيير: 119147584

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

عند استدعاء Editor.clear، يتم الآن معاودة الاتصال إلى OnSharedPreferenceChangeListener.onSharedPreferenceChanged باستخدام مفتاح null.

لمعرفة المزيد من المعلومات عن هذا التغيير، يُرجى الاطّلاع على تغييرات معاودة الاتصال لـ OnSharedPreferencesChangeListener.

CALLBACK_ON_MORE_ERROR_CODE_CHANGE

رقم تعريف التغيير: 130595455

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

تم توسيع رموز الخطأ الآن لكل من updateAvailableNetworks(List, Executor, Consumer) وsetPreferredOpportunisticDataSubscription(int, boolean, Executor, Consumer).

CALL_BACK_ON_CHANGED_LISTENER_WITH_SWITCHED_OP_change

رقم تعريف التغيير: 148180766

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

هذا تغيير بسيط على سلوك startWatchingMode(String, String, AppOpsManager.OnOpChangedListener). قبل إجراء هذا التغيير، قام النظام باستدعاء عملية التبديل مرة أخرى. بعد التغيير، سيعاود النظام الاتصال بالعملية المطلوبة بالفعل أو جميع عمليات التبديل في حالة عدم تحديد أي عملية.

CAMERA_MICROPHONE_CAPABILITY_CHANGE_ID

رقم تعريف التغيير: 136219221

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android، لا تحصل الخدمات التي تعمل في المقدّمة على إمكانيات الكاميرا والميكروفون أثناء الاستخدام إلا عند ضبط R.attr.foregroundServiceType على ServiceInfo.FOREGROUND_SERVICE_TYPE_CAMERA وServiceInfo.FOREGROUND_SERVICE_TYPE_MICROPHONE على التوالي في ملف البيان. في الإصدارات السابقة من نظام التشغيل Android، تلقت الخدمات التي تعمل في المقدّمة إمكانيات الكاميرا والميكروفون تلقائيًا.

لمزيد من المعلومات حول هذا التغيير، يُرجى الاطّلاع على أنواع الخدمات التي تعمل في المقدّمة في نظام التشغيل Android 11.

تغيير_الخلفية_CUSTOM_TOAST_BLOCK

رقم تعريف التغيير: 128611929

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

لم يعُد بإمكان التطبيقات نشر إشعارات مخصّصة في الخلفية. مع ذلك، سيظل بإمكان التطبيقات نشر نخب باستخدام طريقة Toast.makeText(Context, CharSequence, int) وخياراتها أثناء تفعيلها في الخلفية.

لمزيد من المعلومات حول هذا التغيير، يمكنك الاطّلاع على المقالة تم حظر طرق العرض المخصّصة لإعادة نشر الروابط المخصّصة.

تغيير_RESTRICT_SAW_INTENT

رقم تعريف التغيير: 135920175

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

إنّ الأغراض التي تستخدم الإجراء android.settings.MANAGE_APP_OVERLAY_PERMISSION ونظام معرِّف الموارد المنتظم (URI) لبيانات package لم تعُد توجِّه المستخدم إلى شاشة خاصة بالتطبيقات لإدارة الإذن المرتبط بها. بدلاً من ذلك، يتم توجيه المستخدم إلى شاشة حيث يمكنه إدارة جميع التطبيقات التي طلبت الإذن.

تغيير النص_TOASTS في النظام

رقم تعريف التغيير: 147798919

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

يتم الآن عرض الإشعارات النصية من خلال SystemUI بدلاً من داخل التطبيق. ويمنع ذلك التطبيقات من التحايل على القيود المفروضة على نشر نخب مخصّصة في الخلفية.

DEFAULT_SCOPED_STORAGE

رقم تعريف التغيير: 149924527

الحالة التلقائية: مفعَّلة لجميع التطبيقات.

إنّ جميع التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android تستخدم الآن مساحة التخزين على نطاق واسع تلقائيًا ولم يعُد بإمكانها إيقاف مساحة التخزين على مستوى النطاق.

مع ذلك، يمكنك اختبار تطبيقك بدون مساحة تخزين مخصّصة، بغض النظر عن إصدار حزمة تطوير البرامج (SDK) المستهدَف وقيم علامات بيان التطبيق، من خلال إيقاف هذا التغيير.

لمزيد من المعلومات حول التغييرات التي تم إجراؤها على مساحة التخزين على نطاق واسع في نظام التشغيل Android 11، يمكنك الاطّلاع على قسم التخزين الفرعي في الصفحة حول التغييرات التي طرأت على مساحة تخزين Android في Android 11.

EMPTY_INTENT_ACTION_CATEGORY

رقم تعريف التغيير: 151163173

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android، يعرض النظام الآن رسالة خطأ إذا كان فلتر الأهداف action أو category عبارة عن سلسلة فارغة. حدث خطأ في النظام الأساسي قبل الإصدار Android 11 الذي سمح لهذه الحالة بالتمرير بدون حدوث أي خطأ. لاحظ أن هذا لا يشمل الحالات التي تكون فيها السمة فارغة أو مفقودة، حيث يؤدي ذلك دائمًا إلى حدوث خطأ.

FILTER_APPLICATION_QUERY

رقم تعريف التغيير: 135549675

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

تحتاج التطبيقات الآن إلى توضيح الحِزم والأغراض التي تنوي استخدامها قبل أن تتمكّن من الحصول على تفاصيل حول التطبيقات الأخرى على الجهاز. ويجب تقديم هذه التعريفات باستخدام علامة <queries> في ملف البيان الخاص بالتطبيق.

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

FORCE_ENABLE_SCOPED_STORAGE

رقم تعريف التغيير: القيمة: 132649864

الحالة التلقائية: غير مفعّلة لجميع التطبيقات.

إنّ جميع التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android تستخدم الآن مساحة التخزين على نطاق واسع تلقائيًا ولم يعُد بإمكانها إيقاف مساحة التخزين على مستوى النطاق.

ومع ذلك، إذا كان تطبيقك لا يزال يستهدف Android 10 (المستوى 29 لواجهة برمجة التطبيقات) أو أقل، يمكنك اختبار تطبيقك من خلال مساحة تخزين محدَّدة، بغض النظر عن إصدار حزمة تطوير البرامج (SDK) المستهدَف لتطبيقك وقيم علامة ملف البيان، من خلال تفعيل هذا التغيير.

لمزيد من المعلومات حول التغييرات التي تم إجراؤها على مساحة التخزين على نطاق واسع في نظام التشغيل Android 11، يمكنك الاطّلاع على قسم التخزين الفرعي في الصفحة حول التغييرات التي طرأت على مساحة تخزين Android في Android 11.

GET_DATA_CONNECTION_STATE_R_VERSION

رقم تعريف التغيير: 148535736

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

للتحقّق من إصدار حزمة تطوير البرامج (SDK) للحزمة "PreciseDataConnectionState#getDataConnectionState

GET_DATA_STATE_R_VERSION

رقم تعريف التغيير: 148534348

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

للتحقّق من إصدار حزمة تطوير البرامج (SDK) getDataState().

GET_PORT_SECURITY_EXCEPTIONS

رقم تعريف التغيير: 150935354

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى التطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث، لن يخضع getProvider(String) أي استثناءات أمنية.

GET_TARGET_SDK_VERSION_CODE_CHANGE

رقم تعريف التغيير: 145147528

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار 10 من Android (المستوى 29 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

للتحقّق من إصدار حزمة تطوير البرامج (SDK) لطريقة SmsManager.sendResolverResult()،

GWP_ASAN

رقم تعريف التغيير: 135634846

الحالة التلقائية: غير مفعّلة لجميع التطبيقات.

تعمل هذه السياسة على تفعيل رصد أخطاء الذاكرة الأصلية المستندة إلى عينات في التطبيقات.

لمزيد من المعلومات حول هذا التغيير، يمكنك الاطّلاع على دليل GWP-ASan.

HIDE_MAXTARGETSDK_P_HIDDEN_APIS

رقم تعريف التغيير: 149997251

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار 10 من Android (المستوى 29 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى التطبيقات التي تستهدف الإصدار Android 10 (المستوى 29 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث، ستتم إزالة إمكانية الوصول إلى جميع الواجهات غير المتوافقة مع حزمة SDK التي تشكّل جزءًا من قائمة max-target-p (greylist-max-p) لنظام التشغيل Android 10 (المستوى 29 من واجهة برمجة التطبيقات).

HIDE_MAXTARGETSDK_Q_HIDDEN_APIS

رقم تعريف التغيير: 149994052

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى التطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث، ستتم إزالة إمكانية الوصول إلى جميع الواجهات غير المتوافقة مع حزمة SDK التي تشكّل جزءًا من قائمة max-target-q (greylist-max-q) لنظام التشغيل Android 11 (المستوى 30 من واجهة برمجة التطبيقات).

لمزيد من المعلومات حول هذا التغيير، يمكنك الاطّلاع على الواجهات غير المتوفّرة حاليًا في حزمة SDK والمحظورة الآن في نظام التشغيل Android 11.

تغيير الرمز

رقم تعريف التغيير: 147600208

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار 10 من Android (المستوى 29 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

للتحقّق من إصدار حزمة تطوير البرامج (SDK) في TelephonyManager.listen(PhoneStateListener, int).

MUSING_APP_TAG

رقم تعريف التغيير: 150776642

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android، يتم الآن عرض خطأ عندما لا يتضمّن ملف بيان التطبيق العلامة application أو instrumentation.

NATIVE_HEAP_POINTER_TAGGING

رقم تعريف التغيير: 135754954

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android، تتضمّن الآن تخصيصات كومة الذاكرة المؤقتة الأصلية علامة غير صفرية في أهم وحدة بايت.

لمزيد من المعلومات، يُرجى الاطّلاع على مقالة وضع العلامات الخاصة بمؤشر الماوس.

PHONE_STATE_LISTENER_LIMIT_CHANGE_ID

رقم تعريف التغيير: 150880553

الحالة التلقائية: مفعَّلة لجميع التطبيقات.

في التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android، تم الآن فرض حدّ أقصى على عدد عناصر PhoneStateListener التي يمكن لأي عملية تسجيلها من خلال TelephonyManager.listen(PhoneStateListener, int). الحد التلقائي هو 50، والذي يمكن تغييره من خلال تحديثات تهيئة الأجهزة البعيدة. يتم فرض هذا الحدّ باستخدام السمة IllegalStateException التي تم طرحها من قِبل TelephonyManager.listen(PhoneStateListener, int) عندما تحاول العملية المخالفة تسجيل عدد كبير جدًا من المستمعين.

PREVENT_meta_REFLectION_BLACKLIST_ACCESS

رقم تعريف التغيير: 142365358

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

لم يعُد بإمكان التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android استخدام طبقة انعكاس إضافية للوصول إلى الواجهات المحظورة في حزمة تطوير البرامج (SDK) غير التابعة لحزمة SDK.

PROCESS_CAPإصلاح_CHANGE_ID

رقم تعريف التغيير: 136274596

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى التطبيقات التي تستهدف الإصدار Android 11، يمكن الآن استخدام العلامة Context.BIND_INCLUDE_CAPABILITIES لنقل الإمكانات أثناء الاستخدام من عملية العميل إلى خدمة مرتبطة.

REMOVE_ANDROID_TEST_BASE

رقم تعريف التغيير: 133396946

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى التطبيقات التي تستهدف الإصدار 11 من نظام التشغيل Android، تمت إزالة مكتبة android.test.base إذا كان التطبيق لا يعتمد على android.test.runner (لأنه يعتمد على صفوف من مكتبة android.test.base).

REQUEST_ACCESSIBILITY_button_change

رقم تعريف التغيير: 136293963

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

بالنسبة إلى خدمات تسهيل الاستخدام التي تستهدف الإصدار Android 11، يجب الآن تحديد العلامة FLAG_REQUEST_ACCESSIBILITY_BUTTON في ملف البيانات الوصفية لخدمة تسهيل الاستخدام. وبخلاف ذلك، يتم تجاهل العلامة.

لمزيد من المعلومات حول هذا التغيير، يمكنك الاطّلاع على الإقرار باستخدام زر أدوات تسهيل الاستخدام في ملف البيانات الوصفية.

ResourceS_ARSC_chromecast

رقم تعريف التغيير: 132742131

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

لا يمكن تثبيت التطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) إذا كانت تحتوي على ملف resources.arsc مضغوط أو إذا لم تتم محاذاة هذا الملف على حدود 4 بايت.

لمزيد من المعلومات عن هذا التغيير، راجع ملفات الموارد المضغوطة.

RESTRICT_STORAGE_ACCESS_frameWORK

رقم تعريف التغيير: 141600225

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

إذا كان تطبيقك يستهدف نظام التشغيل Android 11 ويستخدم إطار عمل الوصول إلى مساحة التخزين (SAF)، لن يعود بإمكانك الوصول إلى أدلة معيّنة من خلال إجراءَي ACTION_OPEN_DOCUMENT وACTION_OPEN_DOCUMENT_TREE القصد. للمزيد من المعلومات عن هذه التغييرات، يمكنك الاطّلاع على قسم قيود الوصول إلى المستندات في الصفحة التي تناقش تعديلات الخصوصية المتعلّقة بمساحة التخزين في نظام التشغيل Android 11.

SELINUX_LATEST_التغييرات

رقم تعريف التغيير: 143539591

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

يعمل هذا التغيير على حظر وصول التطبيقات إلى نطاق untrusted_app_R-targetSDk SELinux. يشكّل هذا الإجراء أحد التغييرات الأساسية في إطار عمل التوافق الذي يسمح للتطبيقات بالتبديل بين التغييرات الأخرى التي يتم حظر الوصول إليها من خلال targetSdkVersion بدون تغيير targetSDKVersion في التطبيق. لهذا السبب، يجب عدم إيقاف هذا التغيير لتطبيق يستهدف الإصدار 11 من نظام التشغيل Android، وإلا لن يعمل التطبيق.

لا يؤثر هذا التغيير في التطبيقات التي تستخدم رقم تعريف مستخدم مشترَكًا.

استثناءات_THROW_SECURITY_EXCEPTIONS

رقم تعريف التغيير: 147340954

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

قبل استخدام نظام التشغيل Android 11، كان يتم عرض SecurityException فقط من خلال واجهات برمجة تطبيقات setEnabled بسبب خطأ في الإذن. في نظام التشغيل Android 11، لم يعُد ذلك صحيحًا، ويمكن طرح SecurityException لأي عدد من الأسباب، لا يظهر للمتصل أي منها.

للحفاظ على السلوك الحالي لواجهة برمجة التطبيقات، في حال تعذّر تنفيذ الأذونات القديمة أو عدم تنفيذ إجراءات تنفيذية لتطبيق لا يستهدف الإصدار 11 من نظام التشغيل Android، يتم فرض الاستثناء على IllegalStateException التي كانت موجودة في المصدر الذي يسبق Android 11.

USE_SET_LOCATION_UPDATE

رقم تعريف التغيير: 117835097

الحالة التلقائية: مفعَّلة للتطبيقات التي تستهدف الإصدار Android 11 (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث.

لم يعُد بإمكان تطبيقات المشرفين التي تستهدف الإصدار 11 من نظام التشغيل Android استخدام DevicePolicyManager.setSecureSetting(ComponentName, String, String) لتغيير الإعداد Settings.Secure.LOCATION_MODE المتوقّف. بدلاً من ذلك، عليهم استخدام DevicePolicyManager.setLocationEnabled(ComponentName, boolean).