الشاشات المدعومه

الإعلانات

الشاشات المدعومه <supports-screens>

 

الشاشات المدعومه <supports-screens>

تركيب الجمله:

وارد في: 

الإيضاح

الوصف:

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

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

ملاحظة: وضع توافق الشاشة ليس وضعاً تريد لتطبيقك تشغيله – لأنه يتسبب في حدوث مشاكل خاصة بالبكسل و ضبابية في واجهة المستخدم، بسبب التقريب\التبعيد “زوم”.

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

 

تطبيق “يدعم” حجم شاشة معين، إذا كان التحجيم يملأ الشاشة بأكملها بشكلٍ مناسب.

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

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

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

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

يمكنك إستخدام سمات عنصر “الشاشات المدعومه” <supports-screens> للتحكم في ما إذا كان يجب نشر تطبيقك على شاشات أصغر.

أو يتم زيادة واجهة المستخدم الخاصة به “عمل زوم” لتناسب شاشات أكبر بإستخدام وضع توافق الشاشات في النظام.

عندما لا تكون قد صممته ليناسب الشاشات الكبيرة و أن التحجيم العادي لا يحقق النتائج المرجوه.

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

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

ملاحظة: يقدم إصدار الأندرويد 3.2 سمات جديدة: android:requiresSmallestWidthDp, android:compatibleWidthLimitDp،

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

 

حول وضع توافق الشاشه

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

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

هناك إصداران مختلفان من وضع توافق الشاشة بناءً على إصدار الجهاز الذي يعمل عليه التطبيق.

من إصدار الأندرويد 1.6 إلى الإصدار 3.1، يقوم النظام بتشغيل تطبيقك في نافذة “الطابع البريدي”. والتي تحاكي

شاشة بأبعاد 320dp x 480dp مع حواف سوداء تملأ المساحة المتبقية من الشاشة.

على نظام أندرويد 3.2 وأحدث، يمكنك رسم المخطط كما لو كان على شاشة بأبعاد 320dp x 480dp، ومن ثم تقوم بتقريبها لتملأ الشاشة.

يؤدي ذلك غالباً إلى حدوث بعض التأثيرات مثل الرؤية الضبابية والبكسل في واجهة المستخدم.

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

 

 

الشاشات المدعومه

السمات:

android:resizeable

تشير إلى ما إذا كان التطبيق قابل للتحجيم ليلائم أحجام مختلفة للشاشة أم لا.

تأخذ القيمة “صحيح”، بشكلٍ إفتراضي.

إذا تم تعيينها على “خطأ”، سيقوم النظام بتشغيل تطبيقك في وضع توافق الشاشة عند تشغيله على شاشات كبيره.

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

يجب ألا تستخدم هذه السمة.

android:smallScreens

تشير إلى ما إذا كان التطبيق يدعم أحجام شاشات أصغر أم لا.

يتم تعريف الشاشة الصغيرة كشاشة ذات نسبة أبعاد أصغر من الشاشة “العاديه” (شاشات HVGA التقليديه).

تطبيق لا يدعم الشاشات الصغيرة لن يكون متاح للأجهزة ذات الشاشات الصغيرة من قبل الخدمات الخارجية (مثل قوقل بلي).

لأنه يوجد القليل مما يمكن للنظام فعله، لجعل تطبيق مماثل يعمل على شاشة أصغر.

هذه السمة تأخذ القيمة “صحيح” بشكلٍ إفتراضي.

android:normalScreens

تشير إلى ما إذا كان التطبيق يدعم أحجام شاشات عادية أم لا.

تقليدياً هذه شاشة HVGA ذات كثافة متوسطة، ولكن أيضاً شاشات WQVGA منخفضة الكثافة و شاشات WVGA عالية الكثافة تعتبران أيضاً كشاشات عادية.

تأخذ هذه السمة القيمة “صحيح” بشكلٍ إفتراضي.

android:largeScreens

تشير إلى ما إذا كان التطبيق يدعم أحجام شاشات كبيرة أم لا.

يتم تعريف الشاشة الكبيرة كشاشة أكبر بكثير من الشاشة “العادية” للهاتف، وبالتالي قد تتطلب عناية خاصة على جزئية التطبيق للإستفادة منها.

على الرغم من أنها قد تعتمد على تغيير النظام للحجم لكي يملأ الشاشة.

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

كن حذراً، فإن تعيينها على القيمة “خطأ” سيقوم بشكلٍ عام بتمكين وضع توافق الشاشة.

android:xlargeScreens

تشير إلى ما إذا كان التطبيق يدعم أحجام الشاشات الأكبر أم لا. يتم تعريف الشاشات الأكبر كشاشات ذات حجم أكبر بكثير من الشاشة “الكبيرة”.

مثل شاشة الجهاز اللوحي (أو شيء أكبر) وقد تتطلب عناية خاصة على جزئية التطبيق للإستفادة منها.

على الرغم من أنها قد تعتمد على تغيير النظام للحجم لكي يملأ الشاشة.

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

كن حذراً، فإن تعيينها على القيمة “خطأ” سيقوم بشكلٍ عام بتمكين وضع توافق الشاشة.

تم تقديم هذه السمة في المستوى API 9.

 

android:anyDensity

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

بالنسبة للتطبيقات التي تدعم إصدار الأندرويد 1.6 (API 4) وأحدث، تكون القيمة الإفتراضية لهذه السمة “صحيح”.

ولا يجب عليك تعيينها إلى القيمة “خطأ” إلا إن كنت متأكداً من ضرورة ذلك لكي يعمل تطبيقك.

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

(لمزيد من المعلومات راجع مستند “دعم الشاشات المتعددة“).

 

 

الشاشات المدعومه

android:requiresSmallestWidthDp

تحدد أدنى عرض مطلوب. يعتبر أصغر عرض هو أقصر بعد لمساحة الشاشة (بوحدة DP) التي يجب أن تكون متاحة لواجهة مستخدمك.

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

(عادة ما تكون القيمة التي توفرها لهذه السمة هي “أصغر عرض” يدعمه مخططك، بفض النظر عن الإتجاه الحالي للشاشة).

على سبيل المثال، أصغر عرض لشاشات الهواتف الإعتيادية هو 320dp، والجهاز اللوحي ذو السبعة بوصات أصغر عرض لشاشته هو 600dp.

اما الجهاز اللوحي ذو العشرة بوصات فأصغر عرض لشاشته هو 720dp.

هذه القيم عادة هي أصغر عرض لأنها تمثل أقصر بعد لمساحة الشاشة المتوفرة.

الحجم مقارنة بقيمتك، يأخذ في الحسبان زخارف الشاشة و واجهة مستخدم النظام.

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

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

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

إذا قام تطبيقك بتغيير الحجم بشكلٍ صحيح للشاشات الأصغر حجماً (نزولاً إلى أصغر حجم أو أدنى عرض من 320dp)، فلن تحتاج إلى إستخدام هذه السمه.

خلاف ذلك، يجب عليك إستخدام قيمة لهذه السمة تتطابق مع أصغر قيمة يستخدمها تطبيقك، لمؤهل أصغر عرض للشاشة (sw<N>dp).

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

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

تم تقديم هذه السمة في المستوى API 13.

 

 

الشاشات المدعومه

android:compatibleWidthLimitDp

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

إذا كان أصغر جانب من الشاشة المتاحة على الجهاز أكبر من قيمتك هنا “قيمة هذه السمه”.

سيبقى بإمكان المستخدمين تثبيت تطبيقك، ولكن سيتم تشغيله في وضع توافق الشاشة.

بشكلٍ إفتراضي، يتم تعطيل وضع توافق الشاشة، ويتم تغيير حجم مخططك ليتناسب مع الشاشة كالمعتاد.

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

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

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

تم تقديم هذه السمة في المستوى API 13.

android:largestWidthLimitDp

تسمح لك هذه السمة بفرض تمكين وضع توافق الشاشة من خلال تحديد الحد الأقصى لـ”أصغر عرض للشاشة” الذي تم تصميم تطبيقك به.

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

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

خلاف ذلك، يجب عليك النظر أولاً في إستخدام السمة android:compatibleWidthLimitDp.

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

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

ملاحظة: في الوقت الحالي، وضع توافق الشاشة يحاكي فقط شاشات الهواتف ذات العرض 320dp.

لذا لا يتم تطبيق وضع توافق الشاشة إذا كانت قيمتك لـandroid:largestWidthLimitDp أكبر من 320.

تم تقديم هذه السمة في المستوى API 13.

مقدم في:
API 4

راجع أيضاً:
دعم الشاشات المتعددة.
عرض المقاييس.

 


للإطلاع على المقال باللغة الإنجليزية أضغط هنا.

الإعلانات

11 thoughts on “الشاشات المدعومه”

اترك رد