<supports-devices>

بناء الجملة:
<supports-screens android:resizeable=["true"| "false"]
                  android:smallScreens=["true" | "false"]
                  android:normalScreens=["true" | "false"]
                  android:largeScreens=["true" | "false"]
                  android:xlargeScreens=["true" | "false"]
                  android:anyDensity=["true" | "false"]
                  android:requiresSmallestWidthDp="integer"
                  android:compatibleWidthLimitDp="integer"
                  android:largestWidthLimitDp="integer"/>
الواردة في:
<manifest>
description:

يتيح لك هذا الإعداد تحديد أحجام الشاشات التي يتوافق معها تطبيقك وتفعيل وضع التوافق مع الشاشة للشاشات. أكبر مما يدعمه تطبيقك. من المهم أن تستخدم هذا العنصر دائمًا في التطبيق لتحديد أحجام الشاشة التي يتوافق معها تطبيقك.

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

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

ومع ذلك، من المهم تحسين واجهة مستخدم التطبيق للتوافق مع الأحجام المختلفة للشاشات من خلال توفير خيارات بديلة موارد التنسيق. على سبيل المثال، قد ترغب في تعديل تخطيط نشاط ما. عند تشغيله على جهاز لوحي مقارنةً بتشغيله على جهاز محمول.

ومع ذلك، إذا كان التطبيق لا يعمل بشكل جيد عند تغيير حجمه ليلائم أحجام الشاشات المختلفة، استخدام سمات العنصر <supports-screens> لتحديد ما إذا كان التطبيق على شاشات أصغر فقط أو تم تكبير واجهة المستخدم الخاصة به أو "تكبيرها"، لتلائم الشاشات الأكبر حجمًا باستخدام وضع التوافق مع الشاشة في النظام

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

ملاحظة: يقدّم Android 3.2 سمات جديدة: android:requiresSmallestWidthDp وandroid:compatibleWidthLimitDp وandroid:largestWidthLimitDp. إذا كنت تطور التطبيق للتوافق مع Android 3.2 والإصدارات الأحدث، استخدام هذه السمات للإشارة إلى دعم حجم الشاشة بدلاً من السمات استنادًا إلى أحجام الشاشة المعممة.

لمحة عن وضع التوافق مع الشاشة

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

في الإصدارات من 1.6 إلى 3.1 من نظام التشغيل Android، يشغّل النظام تطبيقك في "طابع بريد" نافذة. أُنشأها جون هنتر، الذي كان متخصصًا يحاكي شاشة بدقة 320 بكسل مستقل الكثافة × 480 بكسل مستقل الكثافة مع حد أسود يملأ المنطقة المتبقية من الشاشة.

في الإصدار Android 3.2 والإصدارات الأحدث، يرسم النظام التنسيق كما هو الحال على شاشة بدقة 320 بكسل مستقل الكثافة × 480 بكسل مستقل الكثافة أو تكبيره لملء الشاشة. ويؤدي ذلك غالبًا إلى حدوث بعض العناصر، مثل التمويه والتقطيع في واجهة المستخدم.

لمزيد من المعلومات حول كيفية دعم أحجام الشاشة المختلفة بشكل صحيح بحيث يمكنك تجنب استخدام وضع توافق الشاشة مع تطبيقك، نظرة عامة على توافق الشاشة

:
android:resizeable
: يشير إلى ما إذا كان التطبيق قابلاً لتغيير الحجم ليناسب أحجام الشاشات المختلفة. هذه السمة "true" تلقائيًا. في حال ضبط هذه السياسة على "false"، سيشغِّل النظام تطبيقك في وضع التوافق مع الشاشة على الأجهزة الكبيرة. الشاشات.

تم إيقاف هذه السمة نهائيًا. تم تقديمه لمساعدة التطبيقات للانتقال من Android 1.5 إلى 1.6، عندما تم تقديم التوافق مع شاشات متعددة لأول مرة. لا تستخدمه.

android:smallScreens
يشير إلى ما إذا كان التطبيق متوافقًا مع "صغير" عوامل شكل الشاشة. يتم تعريف الشاشة الصغيرة على أنّها شاشة ذات نسبة عرض إلى ارتفاع أصغر من "العادي" أو شاشة HVGA تقليدية. تطبيق لا لا تتوفر للشاشات الصغيرة الأجهزة ذات الشاشات الصغيرة من الخدمات الخارجية، مثل Google Play، بسبب يمكن أن تفعله المنصة لجعل مثل هذا التطبيق يعمل على شاشة أصغر. هذا "true" بواسطة الافتراضي.
android:normalScreens
تشير إلى ما إذا كان التطبيق يتوافق مع القيمة "عادية" الشاشة وأشكال الأجهزة. عادةً ما يكون هذا هو HVGA متوسط الكثافة ولكن WQVGA ذات الكثافة المنخفضة وكثافة WVGA العالية، تُعد أمرًا طبيعيًا. هذه السمة هي "true" بشكل تلقائي.
android:largeScreens
تشير إلى ما إذا كان التطبيق يتوافق مع الحجم "كبير". عوامل شكل الشاشة. تُعرف الشاشة الكبيرة على أنّها شاشة أكبر بكثير من "عادي" هاتفك المحمول. وبالتالي قد يتطلّب الأمر بعض العناية الخاصة من جانب التطبيق للاستفادة منه بشكل جيد، على الرغم من أنه قد يعتمد على تغيير الحجم بواسطة لملء الشاشة.

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

android:xlargeScreens
يشير إلى ما إذا كان التطبيق يتيح استخدام "كبير جدًا جدًا" عوامل شكل الشاشة. تُعرف الشاشة الكبيرة جدًا على أنّها شاشة أكبر بكثير من "كبير" مثل جهاز لوحي أو شيء أكبر من ذلك. قد يتطلّب ذلك عناية خاصة من جانب التطبيق للاستفادة منه بشكل جيد، على الرغم من أنه قد يعتمد على تغيير الحجم بواسطة لملء الشاشة.

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

تمّ تقديم هذه السمة في المستوى 9 من واجهة برمجة التطبيقات.

android:anyDensity
يشير إلى ما إذا كان التطبيق يتضمن موارد لاستيعاب أي شاشة والكثافة.

بالنسبة إلى التطبيقات التي تتوافق مع الإصدار 1.6 من نظام التشغيل Android (المستوى 4 لواجهة برمجة التطبيقات) والإصدارات الأحدث، إليك "true". تلقائيًا. لا تعينه على "false" إلا إذا كنت متأكدًا تمامًا من أن فمن الضروري لكي يعمل تطبيقك. الوقت الوحيد الذي قد يكون من الضروري فيه إيقاف هذه الميزة إذا كان تطبيقك يعالج الصور النقطية مباشرةً. للحصول على مزيد من المعلومات، يُرجى الاطّلاع على نظرة عامة على توافق الشاشة.

android:requiresSmallestWidthDp
يحدد هذا الإعداد الحد الأدنى من smallestWidth المطلوب للتطبيق. smallestWidth وهو أقصر بُعد مساحة الشاشة، بوحدات dp، يجب أن تكون متاحة لواجهة مستخدم تطبيقك. أي، وهو الأقصر بين البعدين للشاشة المتاحين.

ليتم اعتبار الجهاز متوافق مع تطبيقك، يجب أن تكون قيمة smallestWidth للجهاز مساوية لهذا العنصر أو أكبر منه عادةً، القيمة التي تقدمها له هي "أصغر عرض" التي يدعمها تخطيطك، بغض النظر عن الاتجاه الحالي للشاشة.

على سبيل المثال، يبلغ حجم شاشة الهاتف العادي smallestWidth 320 بكسل مستقل الكثافة، في حين يحتوي الجهاز اللوحي مقاس 7 بوصة على smallestWidth بنسبة عرض إلى ارتفاع 600 بكسل مستقل الكثافة وجهاز لوحي مقاسه 10 بوصة تبلغ درجة دقته smallestWidth بمعدّل 720 بكسل مستقل الكثافة يتم استخدام هذه القيم بشكل عام smallestWidth لأنها أقصر بُعد للمساحة المتاحة للشاشة.

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

إذا تم تغيير حجم التطبيق بشكل صحيح ليتناسب مع أحجام الشاشات الأصغر، انتقل إلى "صغير" الحجم أو الحد الأدنى للعرض، الذي يبلغ 320 بكسل مستقل الكثافة (dp)، ولن تحتاج إلى استخدام هذه السمة. وبخلاف ذلك، استخدام قيمة لهذه السمة بحيث تتطابق مع أصغر قيمة يستخدمها تطبيقك لـ أصغر مؤهِّل لعرض الشاشة (sw<N>dp).

تنبيه: لا يركّز نظام Android على هذه المشكلة. لذلك لا يؤثر في طريقة عمل التطبيق أثناء وقت التشغيل. بدلاً من ذلك، يتم استخدامها لتفعيل الفلترة لتطبيقك على خدمات مثل Google Play. ومع ذلك، لا يتيح Google Play حاليًا استخدام هذه السمة للفلترة على نظام التشغيل Android 3.2، لذا تابِع استخدام سمات الحجم الأخرى إذا لم يكن تطبيقك يعمل. الشاشات الصغيرة.

تمّ تقديم هذه السمة في المستوى 13 من واجهة برمجة التطبيقات.

android:compatibleWidthLimitDp
تتيح لك هذه السمة تفعيل وضع التوافق مع الشاشة ميزة اختيارية للمستخدم من خلال تحديد الحد الأقصى لـ "أصغر عرض للشاشة" التي قد يحددها تطبيقك تنبؤي. إذا كان أصغر جانب من الشاشة المتاحة للجهاز أكبر من القيمة هنا، سيظل بإمكان المستخدمين تثبيت تطبيقك، ولكن نقترح عليهم تشغيله في وضع التوافق مع الشاشة.

من افتراضيًا، يتم تعطيل وضع توافق الشاشة، ويتم تغيير حجم التخطيط ليناسب الشاشة المعتاد. يتوفّر زرّ في شريط النظام يتيح للمستخدم تبديل الشاشة. وضع التوافق.

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

ملاحظة: في الوقت الحالي، يحاكي وضع التوافق مع الشاشة الهاتف المحمول فقط. الشاشات بعرض 320 بكسل مستقل الكثافة، لذلك لا يتم تطبيق وضع التوافق مع الشاشة إذا كانت قيمة android:compatibleWidthLimitDp أكبر من 320.

تمّ تقديم هذه السمة في المستوى 13 من واجهة برمجة التطبيقات.

android:largestWidthLimitDp
تتيح لك هذه السمة فرض تفعيل وضع التوافق مع الشاشة من خلال تحديد الحد الأقصى لـ "أصغر عرض للشاشة" التي تم تصميم التطبيق من أجلها. إذا كان الجانب الأصغر من الشاشة المتاحة للجهاز أكبر من القيمة هنا، يتم تشغيل التطبيق في الشاشة وضع التوافق، مع عدم توفير طريقة للمستخدم لإيقافه.

وإذا كان تطبيقك متوافقًا مع جميع أحجام الشاشات وتم تغيير حجم تخطيطه بشكل صحيح، بحاجة إلى استخدام هذه السمة. وإذا لم تفعل ذلك، يمكنك أولاً استخدام السمة android:compatibleWidthLimitDp. يمكنك استخدام android:largestWidthLimitDp فقط عندما يكون تطبيقك معطّلاً وظيفيًا عند تغيير حجمه ليتناسب مع الشاشات الأكبر حجمًا، كما أن وضع التوافق مع الشاشة هو الطريقة الوحيدة التي يمكن من خلالها استخدام تطبيقك.

ملاحظة: في الوقت الحالي، يحاكي وضع التوافق مع الشاشة الهاتف المحمول فقط. الشاشات بعرض 320 بكسل مستقل الكثافة، لذلك لا يتم تطبيق وضع التوافق مع الشاشة إذا كانت قيمة android:largestWidthLimitDp أكبر من 320.

تمّ تقديم هذه السمة في المستوى 13 من واجهة برمجة التطبيقات.

تم تقديمها في:
المستوى 4 من واجهة برمجة التطبيقات
راجِع أيضًا: