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

الشكل 1. وتعرض شاشة "تغييرات توافق التطبيقات" في خيارات المطوّرين التغييرات التي يمكنك إيقافها.

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

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

  • اختبار التغييرات المستهدفة بدون تغيير targetSdkVersion للتطبيق. ويمكنك استخدام مفاتيح التبديل لفرض تفعيل تغييرات معيَّنة على السلوك المستهدَف لتقييم التأثير على تطبيقك الحالي.
  • تركيز الاختبار على تغييرات معيّنة فقط وبدلاً من معالجة جميع التغييرات المستهدَفة في آنٍ واحد، تتيح لك مفاتيح التبديل إيقاف جميع التغييرات المستهدَفة باستثناء التغييرات التي تريد إجراء الاختبار عليها.
  • إدارة مفاتيح التبديل من خلال adb يمكنك استخدام أوامر adb لتفعيل التغييرات القابلة للتبديل وإيقافها في بيئة الاختبار المبرمَجة.
  • تصحيح الأخطاء بشكلٍ أسرع باستخدام أرقام تعريف التغييرات العادية: ولكل تغيير قابل للتبديل معرّف واسم فريد يمكنك استخدامهما لتصحيح السبب الجذري بسرعة في مخرجات السجل.

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

تضمين تغييرات السلوك في إطار عمل التوافق

تصف القائمة الواردة في هذا القسم التغييرات القابلة للتبديل التي يتم تضمينها في إطار عمل التوافق مع التغييرات المرتبطة بالإصدار 15 من نظام التشغيل Android والتغييرات القابلة للتبديل التي يمكن أن تساعد في الاختبار العام للتطبيق.

يمكنك فلترة قائمة التغييرات حسب الحالة التلقائية.

تغييرات قابلة للتبديل في إطار عمل التوافق في Android 15

CAMERA_MIC_INDICATORS_NOT_PRESENT

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

يشير هذا الرمز إلى أنّ هذا الجهاز يتيح مؤشرات استخدام الكاميرا والميكروفون. تكون القيمة false إن كانت متوفّرة، لأنّ الطريقة CompatChanges#isChangeEnabled تعرض true في حال عدم توفّر رقم تعريف التغيير.

CHECK_PARAMS_IN_IS_SESSION_CONFIGURATION_SUPPORTED

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

عند تفعيل هذه السياسة، يتحقّق isSessionConfigurationSupported أيضًا من توافق معلَمات الجلسة عندما تكون متوافقة مع HAL.

DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_CREATOR

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

عند تفعيل هذا الإعداد، يحظر منشئ PendingIntent تلقائيًا عمليات تشغيل الأنشطة في الخلفية.

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

DEPRECATE_UI_FONT

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

عند تفعيل هذه السياسة، تصبح السمة elegantTextHeight TextView هي true تلقائيًا عندما يعمل تطبيقك على جهاز يعمل بالإصدار 15 من نظام التشغيل Android أو إصدار أحدث. وستحلّ بعض النصوص البرمجية التي تحتوي على مقاييس عمودية كبيرة محلّ الخط المكثّف الذي يسهل قراءته.

لمعرفة المزيد من المعلومات حول هذا التغيير، راجِع القسم في صفحة تغييرات السلوك في نظام التشغيل Android 15 حول الإعدادات التلقائية لسمة فسيتم عرض سمة whiteTextHeight التلقائية على "صحيح".

DOWNSCALED

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

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

عند تفعيل هذا التغيير لحزمة تطبيق، يتم تلقائيًا تغيير حجم التطبيق إلى أعلى عامل تحجيم مفعَّل. على سبيل المثال، يتم استخدام 80% إذا تم تفعيل كل من 80% و70% (DOWNSCALE_80 وDOWNSCALE_70). عند تفعيل كل من هذا التغيير وDOWNSCALED_INVERSE، تكون الأولوية للسمة DOWNSCALED_INVERSE، ويتم تطبيق عامل القياس بشكل عكسي.

DOWNSCALED_INVERSE

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

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

عند تفعيل هذا التغيير لحزمة تطبيق، يتم تلقائيًا تغيير حجم التطبيق إلى أدنى عامل تحجيم مفعَّل. على سبيل المثال، يتم استخدام %80 إذا تم تفعيل كل من %80 و%70 (DOWNSCALE_80 وDOWNSCALE_70) لأنّه عند التطبيق بالعكس، يكون عامل القياس بنسبة %80 يساوي 125%، وهو ما يقل عن المقياس الذي يتم تطبيقه عند تطبيق عامل تحجيم بنسبة %70 بشكل عكسي. عند تفعيل كل من هذا التغيير وDOWNSCALED، تكون الأولوية للDOWNSCALED_INVERSE ويتم تطبيق عامل القياس بشكل عكسي.

DOWNSCALE_30

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنّه يتم عرضه على شاشة بنسبة% 30 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة% 333.33 من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_35

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى أن يفترض التطبيق أنّه يتم عرضه على شاشة بنسبة% 35 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة% 285.71 من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_40

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى فرض أنّ التطبيق يعمل على شاشة بنسبة% 40 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة 250% من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_45

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى أن يفترض التطبيق أنّه يتم عرضه على شاشة بنسبة% 45 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة% 222.22 من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_50

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى أن يفترض التطبيق أنّه يتم عرضه على شاشة بنسبة% 50 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة 200% من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_55

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنّه يتم عرضه على شاشة بنسبة% 55 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة 181.82% من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_60

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنّه يتم عرضه على شاشة بنسبة% 60 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة% 166.67 من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_65

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى أن يفترض التطبيق أنّه يتم عرضه على شاشة بنسبة% 65 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة% 153.85 من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_70

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنّه يتم عرضه على شاشة بنسبة% 70 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة 142.86% من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_75

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنّه يتم عرضه على شاشة بنسبة% 75 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة% 133.33 من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_80

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى أن يفترض التطبيق أنّه يتم عرضه على شاشة بنسبة% 80 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة 125% من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_85

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى أن يفترض التطبيق أنّه يتم عرضه على شاشة بنسبة% 85 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة% 117.65 من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DOWNSCALE_90

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

في حال تفعيل DOWNSCALED أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى أن يفترض التطبيق أنّه يتم عرضه على شاشة بنسبة% 90 من درجة الدقة العمودية والأفقية للشاشة الحقيقية. في حال تفعيل DOWNSCALED_INVERSE أيضًا، سيؤدي تفعيل هذا التغيير لإحدى الحِزم إلى إجبار التطبيق على افتراض أنه يعمل على شاشة بنسبة 111.11% من درجة الدقة العمودية والأفقية للشاشة الحقيقية.

DO_NOT_CLONE_IN_ARRAYS_AS_LIST

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

عند تفعيل هذا الإعداد، يصبح نوع المكوِّن في الصفيف الناتج الآن Object، وليس نوع عناصر المصفوفة الأساسية.Arrays.asList(...).toArray() بالتالي تعرض التعليمة البرمجية التالية ClassCastException:

String[] elements = (String[]) Arrays.asList("one", "two").toArray();

في هذه الحالة، للاحتفاظ بـ String كنوع المكوِّن في الصفيف الناتج، يمكنك استخدام Collection.toArray(Object[]) بدلاً من ذلك:

String[] elements = Arrays.asList("two", "one").toArray(new String[0]);

لمزيد من المعلومات حول هذا التغيير، راجِع القسم الذي يتناول تغييرات واجهة برمجة التطبيقات OpenJDK API في صفحة التغييرات على السلوك في نظام التشغيل Android 15.

ENABLE_BUNDLE_LAUNCH_ACTIVITY_ITEM

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

عند تفعيل هذا الإعداد، يمكنك منع أي تطبيقات حالية من مواجهة مشاكل التوافق مع الاستخدامات غير المستندة إلى حزمة تطوير البرامج (SDK) لـ ClientTransaction#getActivityToken()، يمكنك السماح بالتجميع LaunchActivityItem فقط.

ENABLE_MATCH_LOCAL_NETWORK

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

عند تفعيل هذا الإعداد، تتلقّى التطبيقات معاودة الاتصال بالشبكة من الشبكات المحلية تلقائيًا. ولا تزال التطبيقات التي تستهدف الإصدار 14 من نظام التشغيل Android (المستوى 34 لواجهة برمجة التطبيقات) أو الإصدارات الأقدم بحاجة إلى إضافة NetworkCapabilities.NET_CAPABILITY_LOCAL_NETWORK إلى NetworkCapabilities من NetworkRequest لتلقّي ConnectivityManager.NetworkCallback من الشبكات المحلية.

ENABLE_STRICT_FORMATTER_VALIDATION

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

عند تفعيل هذه السياسة، تصبح عملية التحقّق من صحة فهرس الوسيطات والعلامات والعرض والدقة أكثر صرامة عند استخدام واجهتَي برمجة التطبيقات String.format() وFormatter.format().

لمزيد من المعلومات حول هذا التغيير، راجِع القسم الذي يتناول تغييرات واجهة برمجة التطبيقات OpenJDK API في صفحة التغييرات على السلوك في نظام التشغيل Android 15.

ENFORCE_EDGE_TO_EDGE

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

عند تفعيل هذه الميزة، ستظهر التطبيقات تلقائيًا على الأجهزة التي تعمل بالإصدار 15 من نظام التشغيل Android أو الإصدارات الأحدث.

لمزيد من المعلومات حول هذا التغيير، يمكنك مراجعة القسم الذي يتناول فرض إجراءات شاملة على Android 15 في صفحة تغييرات السلوك في نظام التشغيل Android 15.

ENFORCE_STRICT_QUERY_BUILDER

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

عند تفعيل هذه السياسة، يتحقّق SQLiteQueryBuilder من جميع اختيارات طلب البحث CalendarProvider2 من خلال الوسيطات الضارّة.

FGS_BOOT_COMPLETED_RESTRICTIONS

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

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

لمزيد من المعلومات حول هذا التغيير، راجِع القسم في صفحة تغييرات السلوك على نظام التشغيل Android 15 حول القيود المفروضة على أجهزة استقبال البث على BOOT_COMPLETED التي تشغِّل الخدمات التي تعمل في المقدّمة.

FGS_INTRODUCE_TIME_LIMITS

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

عندما يكون هذا الإعداد مفعَّلاً، يتم تحديد مدة زمنية محدّدة للخدمات التي تعمل في المقدّمة من أنواع معيّنة. إذا لم يتم إيقاف الخدمة التي تعمل في المقدّمة من النوع المخالف خلال المدّة الزمنية المخصّصة، ستتلقّى هذه الخدمة معاودة الاتصال باستخدام Service.onTimeout(int, int) ويجب إيقافها خلال بضع ثوانٍ. في حال عدم تنفيذ هذا الإجراء، سيتم الإعلان عن خطأ ANR.

لمعرفة المزيد من المعلومات عن هذا التغيير، راجِع الأقسام المتعلّقة بسلوك المهلة في Android 15 المتعلقة بسلوكيات مزامنة البيانات و معالجة الوسائط، وذلك ضمن نوعَي الخدمات التي تعمل في المقدّمة.

FGS_SAW_RESTRICTIONS

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

عند تفعيل هذه السياسة، يؤدي هذا الخيار إلى إيقاف بدء خلفية الخدمة التي تعمل في المقدّمة في نافذة تنبيه النظام لجميع الأنواع ما لم تكن تتضمّن نافذة تراكب النظام.

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

FORCE_DISABLE_HEVC_SUPPORT

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

يمكنك فرض إيقاف تطبيق معيَّن من أجل دعم إمكانية وسائط HEVC. يجب أن تفصح التطبيقات في ملف البيان عن إمكانات الوسائط المتوافقة، ولكن يمكن استخدام هذه العلامة لفرض عدم توافق التطبيق مع HEVC، وبالتالي يتم فرض تحويل الترميز أثناء الوصول إلى الوسائط المرمَّزة بترميز HEVC. يؤدي ضبط هذه العلامة إلى إلغاء أي إعدادات تلقائية على مستوى نظام التشغيل للتطبيقات. ويتم إيقافها تلقائيًا، أي أنّ الأولوية تكون للإعدادات التلقائية لنظام التشغيل. في حال تفعيل كل من هذه العلامة وFORCE_ENABLE_HEVC_SUPPORT، يتجاهل نظام التشغيل كلتا العلامتين.

FORCE_ENABLE_HEVC_SUPPORT

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

يؤدي فرض تفعيل التطبيق إلى التوافق مع إمكانات وسائط HEVC، حيث يجب أن تعلن التطبيقات عن إمكانات الوسائط المتوافقة في ملف البيان، ولكن يمكن استخدام هذه العلامة لفرض توافق أحد التطبيقات مع HEVC، وبالتالي تجنُّب تحويل الترميز أثناء الوصول إلى الوسائط المُرمّزة في HEVC. يؤدي ضبط هذه العلامة إلى إلغاء أي إعدادات تلقائية على مستوى نظام التشغيل للتطبيقات. ويتم إيقافها تلقائيًا، ما يعني أنّ الأولوية ستكون للإعدادات التلقائية لنظام التشغيل. في حال تفعيل هذه العلامة وFORCE_DISABLE_HEVC_SUPPORT، يتجاهل نظام التشغيل كلتا العلامتين.

FORCE_NON_RESIZE_APP

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

تفرض أن تكون الحزم التي تم تطبيقها عليها غير قابلة لتغيير الحجم.

FORCE_RESIZE_APP

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

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

GWP_ASAN

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

تُفعِّل هذه السياسة ميزة رصد أخطاء الذاكرة الأصلية في التطبيقات.

لمزيد من المعلومات حول استخدام أداة GWP-ASan، يمكنك الاطّلاع على دليل GWP-ASan.

IS_DEVICE_OWNER_USER_AWARE

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

عند تفعيل هذه السياسة، ستستخدم الطريقة isDeviceOwnerApp(String) بيانات المستخدم المضمَّنة في السياق. بالنسبة إلى التطبيقات التي تستهدف Android 14 (المستوى 34 لواجهة برمجة التطبيقات) أو الإصدارات الأقدم، سيتم استخدام مستخدم عملية الاتصال (Process.myUserHandle()).

MANAGE_GLOBAL_ZEN_VIA_IMPLICIT_RULES

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

عند تفعيل هذه الميزة، لن تتمكّن التطبيقات بعد ذلك من تغيير الحالة العامة أو سياسة "عدم الإزعاج" (DND) على الجهاز (إما من خلال تعديل إعدادات المستخدم أو إيقاف وضع DND). بدلاً من ذلك، يجب أن تساهم التطبيقات في AutomaticZenRule، التي يدمجها النظام في سياسة عامة مع المخطط الحالي الأكثر تقييدًا.

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

NATIVE_HEAP_ZERO_INIT

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

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

NATIVE_MEMTAG_ASYNC

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

تفعيل التحقق من علامة الذاكرة غير المتزامنة (ASYNC) في هذه العملية. لا تؤثر هذه العلامة إلا في الأجهزة التي تتوافق مع إضافة وضع علامات الذاكرة ARM (MTE).

NATIVE_MEMTAG_SYNC

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

يتم تفعيل فحص علامة الذاكرة المتزامنة (SYNC) في هذه العملية. لا تؤثر هذه العلامة إلا في الأجهزة التي تتوافق مع إضافة وضع علامات الذاكرة ARM (MTE). في حال تفعيل كل من NATIVE_MEMTAG_ASYNC وهذا الخيار، سيكون لهذا الخيار الأولوية ويتم تفعيل إضافة وضع علامات الذاكرة (MTE) في "وضع المزامنة".

OVERRIDE_ANY_ORIENTATION

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

عند تفعيل هذا الإعداد، يتيح تطبيق عمليات إلغاء الاتجاه التالية بغض النظر عن الاتجاه الذي يطلبه النشاط:

OVERRIDE_ANY_ORIENTATION_TO_USER

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

عند تفعيل هذه السياسة، يتم تفعيل SCREEN_ORIENTATION_USER، التي تلغي أي اتجاه يطلبه النشاط. يمكن إلغاء التطبيقات ذات الاتجاه الثابت إلى وضع ملء الشاشة على الأجهزة ذات الشاشات الكبيرة مع تفعيل ignoreOrientationRequest لهذا الإلغاء.

OVERRIDE_CAMERA_COMPAT_DISABLE_FREEFORM_WINDOWING_TREATMENT

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

عند تفعيل هذا الإعداد، يتم استبعاد الحِزم التي يتم تطبيق الإلغاء عليها من معالجة التوافق مع الكاميرا في وضع النوافذ الحرة للتطبيقات ذات الاتجاه الثابت.

في وضع فتح النوافذ الحرة، تتم محاكاة عملية التوافق عند التشغيل على جهاز في الوضع العمودي من خلال عرض نافذة التطبيق على شاشة عريضة أفقيًا وتغيير خصائص الكاميرا إلى ما تتوقعه التطبيقات عادةً في الجهاز الرأسي: دوران جهاز استشعار بزاوية 90 درجة و270 درجة للكاميرات الأمامية والخلفية على التوالي، وضبط تدوير شاشة العرض على القيمة 0.

استخدِم هذه العلامة لإيقاف معالجة التوافق للتطبيقات التي لا تستجيب بشكل جيد للمعالجة.

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

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

عند تفعيل هذا الإعداد، يفرض هذا التغيير على الحزم التي يتم تطبيقها أن تتجاهل القيمة الحالية لـ android:resizeableActivity بالإضافة إلى حزمة تطوير البرامج (SDK) المستهدَفة التي تساوي أو تقل عن الإصدار Android 6.0 (مستوى واجهة برمجة التطبيقات 23) ويتم اعتبار النشاط غير قابل لتغيير الحجم. في هذه الحالة، لا تعتمد قيمة تدوير الكاميرا واقتصاصها إلا على التعويض المطلوب مع الأخذ في الاعتبار دوران الشاشة الحالي.

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

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

عند تفعيل هذا الإعداد، يفرض هذا التغيير على الحزم التي يتم تطبيقها إلغاء السلوك التلقائي للتدوير والاقتصاص في الكاميرا وعرض CaptureRequest.SCALER_ROTATE_AND_CROP_NONE دائمًا.

OVERRIDE_DISABLE_MEDIA_PROJECTION_SINGLE_APP_OPTION

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

عند تفعيل هذه الميزة، تضمن إطلاع المستخدمين على خيار التقاط صورة تطبيق واحد أو الشاشة بأكملها عند بدء جلسة MediaProjection، ما يُلغي استخدام MediaProjectionConfig#createConfigForDefaultDisplay.

OVERRIDE_LANDSCAPE_ORIENTATION_TO_REVERSE_LANDSCAPE

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

لتفعيل SCREEN_ORIENTATION_REVERSE_LANDSCAPE للتطبيق الذي تم تطبيقه عليه. ما لم يتم تفعيل OVERRIDE_ANY_ORIENTATION أيضًا، لا يتم استخدام SCREEN_ORIENTATION_REVERSE_LANDSCAPE إلا عندما يحدد النشاط الاتجاه الأفقي. ويمكن أن يساعدك تفعيل هذا التغيير في اختبار سلوك تطبيقك بحثًا عن الاختلافات بين الأجهزة التي يتوافق الاتجاه الأفقي فيها مع Surface.ROTATION_90 والأجهزة التي يتوافق فيها مع Surface.ROTATION_270.

OVERRIDE_LAYOUT_IN_DISPLAY_CUTOUT_MODE

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

عند تفعيل هذا الإعداد، يتم إلغاء التنسيق في سلوك وضع الصورة المقطوعة للشاشة. سينطبق هذا فقط في حال عدم فرض تغطية شاملة للحواف.

OVERRIDE_MIN_ASPECT_RATIO

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

وهذا التغيير هو العامل الأساسي لجميع التغييرات التي تفرض حدًا أدنى معيّنًا لنسبة العرض إلى الارتفاع. يؤدي تفعيل هذا التغيير إلى السماح بتطبيق الحد الأدنى من نِسب العرض إلى الارتفاع التالية:

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

OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN

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

عند تفعيل هذه الميزة، يتم إلغاء الحد الأدنى لنسبة العرض إلى الارتفاع في وضع ملء الشاشة العمودي لاستخدام كل مساحة الشاشة المتاحة.

OVERRIDE_MIN_ASPECT_RATIO_LARGE

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

عند تفعيل OVERRIDE_MIN_ASPECT_RATIO أيضًا، يؤدي تفعيل هذا التغيير لحزمة إلى ضبط الحد الأدنى لنسبة العرض إلى الارتفاع للنشاط على قيمة كبيرة على النحو المحدّد في OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE.

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

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

عند تفعيل OVERRIDE_MIN_ASPECT_RATIO أيضًا، يؤدي تفعيل هذا التغيير لإحدى الحِزم إلى ضبط الحد الأدنى لنسبة العرض إلى الارتفاع للنشاط على قيمة متوسطة على النحو المحدّد في OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE.

OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA

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

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

OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY

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

عند تفعيل OVERRIDE_MIN_ASPECT_RATIO أيضًا، يحدّ هذا التغيير من أي تغييرات أخرى تفرض الحد الأدنى لنسبة العرض إلى الارتفاع للنشاط على قيمة معيّنة، مثل OVERRIDE_MIN_ASPECT_RATIO_LARGE و OVERRIDE_MIN_ASPECT_RATIO_MEDIUM، على الأنشطة التي لها اتجاه عمودي أيضًا.

OVERRIDE_RESPECT_REQUESTED_ORIENTATION

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

عند تفعيل هذا الإعداد، يستثني هذا التغيير الحِزم التي يتم تطبيقها من قيود تجاهُل الاتجاه التي يمكن للشركات المصنّعة للأجهزة ضبطها.

OVERRIDE_UNDEFINED_ORIENTATION_TO_NOSENSOR

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

لتفعيل SCREEN_ORIENTATION_NOSENSOR للتطبيق الذي تم تطبيقه عليه. ما لم يتم تفعيل OVERRIDE_ANY_ORIENTATION أيضًا، لا يتم استخدام SCREEN_ORIENTATION_NOSENSOR إلا عندما لا يحدّد النشاط أي اتجاه ثابت آخر.

OVERRIDE_UNDEFINED_ORIENTATION_TO_PORTRAIT

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

لتفعيل SCREEN_ORIENTATION_PORTRAIT للتطبيق الذي تم تطبيقه عليه. ما لم يتم تفعيل OVERRIDE_ANY_ORIENTATION أيضًا، لا يتم استخدام SCREEN_ORIENTATION_PORTRAIT إلا عندما لا يحدّد النشاط أي اتجاه ثابت آخر.

PARSE_CONTENT_DISPOSITION_USING_RFC_6266

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

عند تفعيل هذه السياسة، تسمح بتحليل عناوين ترتيب المحتوى التي تتوافق مع RFC 6266. وعلى وجه الخصوص، يتيح ذلك تحليل قيم filename* التي يمكنها استخدام ترميز أحرف مختلف.

RATE_LIMIT_TOASTS

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

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

STREAM_INT_DIFFERS_FROM_NEXT_INT

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

عند تفعيل هذه الميزة، تعرض طريقة Random.ints() الآن تسلسلًا من الأرقام يختلف عن الطريقة التي تعرض بها طريقة Random.nextInt(). ويرجع ذلك إلى التغييرات في https://bugs.openjdk.org/browse/JDK-8301574.

لمزيد من المعلومات حول هذا التغيير، راجِع القسم الذي يتناول تغييرات واجهة برمجة التطبيقات OpenJDK API في صفحة التغييرات على السلوك في نظام التشغيل Android 15.

USE_EXPERIMENTAL_COMPONENT_ALIAS

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

عند تفعيل هذا الإعداد، يسمح النظام لحزمة "android" باستخدام الأسماء المستعارة للمكوّنات.

USE_NEW_ISO_LOCALE_CODES

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

عند تفعيل هذه الميزة، لن يتم تحويل رموز اللغات للّغة العبرية واليديشية والإندونيسية إلى الأشكال القديمة (العبرية: iw واليديشية: ji والإندونيسية: in).

لمزيد من المعلومات حول هذا التغيير، راجِع القسم الذي يتناول تغييرات واجهة برمجة التطبيقات OpenJDK API في صفحة التغييرات على السلوك في نظام التشغيل Android 15.