مع كل إصدار، قد تصبح واجهات برمجة تطبيقات Android معيّنة قديمة أو قد تحتاج إلى إعادة تصميمها لتوفير تجربة أفضل للمطوّرين أو دعم الإمكانات الجديدة للأنظمة الأساسية. وفي هذه الحالات، سيوقف Android نهائيًا واجهات برمجة التطبيقات القديمة وسيوجّه مطوّري البرامج إلى واجهات برمجة التطبيقات الجديدة لاستخدامها بدلاً من ذلك.
في حال إيقاف العمل بشكل نهائي، انتهينا من الدعم الرسمي لواجهات برمجة التطبيقات، ولكنها ستظل متاحة للمطوّرين. تسلط هذه الصفحة الضوء على بعض عمليات الإيقاف في هذا الإصدار من Android. للاطّلاع على عمليات الإيقاف النهائي الأخرى، يُرجى الرجوع إلى تقرير اختلافات واجهة برمجة التطبيقات.
RenderScript
بدءًا من الإصدار 12 من نظام التشغيل Android، تم إيقاف واجهات برمجة تطبيقات RenderScript نهائيًا. وستستمر هذه التحديثات في العمل، لكننا نتوقع أن تتوقف الشركات المصنعة للأجهزة والمكونات عن توفير دعم تسريع الأجهزة بمرور الوقت. وللاستفادة بشكل كامل من تسريع وحدة معالجة الرسومات، ننصحك بالانتقال من استخدام RenderScript.
قوائم تشغيل Android
تم إيقاف قوائم التشغيل على Android نهائيًا. توقفت صيانة واجهة برمجة التطبيقات ولكن ستبقى الوظائف الحالية متوافقة مع التوافق.
ننصحك بقراءة قوائم التشغيل وحفظها كملفات m3u.
عمليات إيقاف واجهة برمجة التطبيقات للشبكة الإعلانية
تتوفّر أجهزة Android في العديد من أشكال الأجهزة، مثل الشاشات الكبيرة والأجهزة اللوحية والأجهزة القابلة للطي. لعرض المحتوى بشكل مناسب لكل جهاز،
يحتاج تطبيقك إلى تحديد حجم الشاشة أو العرض. وبمرور الوقت، قدّم Android واجهات برمجة تطبيقات مختلفة لاسترداد هذه المعلومات. في
نظام التشغيل Android 11، قدّمنا واجهة برمجة التطبيقات
WindowMetrics
وأوقفنا العمل بها نهائيًا:
في نظام التشغيل Android 12، نواصل اقتراح استخدام WindowMetrics
وسنوقف نهائيًا الطرق التالية:
يجب أن تستخدم التطبيقات واجهات برمجة التطبيقات WindowMetrics
للاستعلام عن حدود النافذة، أو
Configuration.densityDpi
للاستعلام عن الكثافة الحالية.
يُرجى العِلم أنّ مكتبة WindowManager
Jetpack تتضمن فئة WindowMetrics
تتوافق مع Android 4.0.1 (المستوى 14 من واجهة برمجة التطبيقات) والإصدارات الأحدث.
أمثلة
في ما يلي بعض الأمثلة على كيفية استخدام "WindowMetrics
".
أولاً، تأكّد من أنّ تطبيقك يمكن أن يتيح تغيير حجم أنشطته بالكامل.
يجب أن يعتمد النشاط على WindowMetrics
من سياق نشاط لأي عمل مرتبط بواجهة المستخدم، لا سيما WindowManager.getCurrentWindowMetrics()
.
إذا أنشأ تطبيقك MediaProjection
، يجب ضبط حجم الحدود بشكلٍ صحيح
لأنّ الإسقاط يلتقط الشاشة. إذا كان حجم التطبيق قابلاً لتغيير الحجم بالكامل،
يعرض سياق النشاط الحدود الصحيحة.
Kotlin
val projectionMetrics = activityContext .getSystemService(WindowManager::class.java).maximumWindowMetrics
Java
WindowMetrics projectionMetrics = activityContext .getSystemService(WindowManager.class).getMaximumWindowMetrics();
إذا لم يتم تغيير حجم التطبيق بالكامل، يجب الاستعلام عن الحدود من مثيل WindowContext
واسترداد قيم WindowMetrics للحد الأقصى لمساحة العرض
المتاحة للتطبيق باستخدام
WindowManager.getMaximumWindowMetrics()
Kotlin
val windowContext = context.createWindowContext(mContext.display!!, WindowManager.LayoutParams.TYPE_APPLICATION, null) val projectionMetrics = windowContext.getSystemService(WindowManager::class.java) .maximumWindowMetrics
Java
Context windowContext = mContext.createWindowContext(mContext.getDisplay(), WindowManager.LayoutParams.TYPE_APPLICATION, null; WindowMetrics projectionMetrics = windowContext.getWindowManager() .getMaximumWindowMetrics();