Logo ar.androidermagazine.com
Logo ar.androidermagazine.com

خدعة Facebook البسيطة لخدمة العديد من أجهزة Android المختلفة

Anonim

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

أظهر Facebook للجميع في Big Android Meat and Greet حلاً جديدًا بسيطًا - مكون فئة الأجهزة العام.

يصف مطورو Facebook هذا المكون الجديد للبرنامج مثل هذا:

Device Year Class هي مكتبة تعمل بنظام Android وتنفذ خوارزمية بسيطة تقوم بتخطيط ذاكرة الوصول العشوائي للجهاز ونوى وحدة المعالجة المركزية وسرعة الساعة إلى السنة التي تعتبر فيها مجموعة المواصفات هذه متطورة. يسمح هذا للمطور بتعديل سلوك التطبيق بسهولة بناءً على قدرات أجهزة الهاتف.

لا تغير المكتبة أي سلوك في التطبيق. تقوم بإرجاع قيمة (يتم التعبير عنها كسنة) يتم تخزينها في التعليمات البرمجية للأوقات التي يحتاج فيها المطور إلى تغيير الطريقة التي يعمل بها التطبيق لتكييف التجربة مع نوع معين من الأجهزة. هذا يعني أن بإمكان dev أن يكتب تطبيقًا به رسوم متحركة ومراحل انتقالية سيتم تشغيلها على النحو المقصود عند التشغيل على شيء مثل Galaxy Note 4 ، ولكن لا يستخدم حلوى العين عندما يكون التطبيق يعمل على شيء يشبه Moto E. كما يمكنك تخيل أن هذا النوع من التحكم في تطبيق مثل Facebook - والذي تم تثبيته على ملايين وملايين الهواتف المختلفة - يمكن وسيجعل تجربة أفضل للجميع فقط. وهو سهل التنفيذ. من الوثائق على جيثب:

if (year >= 2013) { // Do advanced animation } else if (year > 2010) { // Do simple animation } else { // Phone too slow, don't do any animations }

أفضل ما في الأمر هو أن المكتبة مفتوحة المصدر بموجب ترخيص برنامج BSD (نفس الترخيص الذي تستخدمه Google لمصدر Android) وهي متاحة لكل مطور لاستخدامها مجانًا.

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

فئة السنة للجهاز 'GitHub