Instagram وFacebook يقدّمان تشغيلاً فوريًا ويعزّزان تفاعل المستخدمين من خلال Media3 PreloadManager
مدّة القراءة: 4 دقائق
في عالم وسائل التواصل الاجتماعي الديناميكي، يمكن جذب انتباه المستخدمين أو فقدانه بسرعة. تُعدّ تطبيقات Meta (مثل Facebook وInstagram) من أكبر منصات التواصل الاجتماعي في العالم، وتخدم مليارات المستخدمين على مستوى العالم. بالنسبة إلى Meta، لا يُعدّ تقديم الفيديوهات بسلاسة مجرد ميزة، بل هو جوهر تجربة المستخدم. أصبحت الفيديوهات القصيرة، لا سيما في "آخر الأخبار" على Facebook وInstagram Reels، محرّكًا أساسيًا للتفاعل. فهي تتيح التعبير الإبداعي واستهلاك المحتوى بسرعة، وتساعد في ربط الأشخاص حول العالم ببعضهم البعض وتسليتهم.
يستعرض منشور المدوّنة هذا رحلة Meta في تحويل تجربة تشغيل الفيديو لمليارات المستخدمين من خلال تقديم ميزة التشغيل الفوري الحقيقي.
الفجوة في وقت الاستجابة في الفيديوهات القصيرة
تؤدي الفيديوهات القصيرة إلى تفاعلات سريعة جدًا، إذ يتصفّح المستخدمون خلاصاتهم بسرعة. إنّ توفير انتقال سلس بين الفيديوهات في خلاصة تتغيّر باستمرار يفرض عقبات فريدة أمام التشغيل الفوري. لذلك، نحتاج إلى حلول تتجاوز ذاكرة التخزين المؤقت للقرص التقليدية واستراتيجيات التشغيل التفاعلية العادية.
الخطوات المستقبلية مع Media3 PreloadManager
لمواكبة التغييرات في عادات المشاهدة الناتجة عن زيادة المحتوى القصير والقيود المفروضة على بنية تشغيل الفيديوهات الطويلة التقليدية، قدّمت Jetpack Media3 واجهة PreloadManager. يتيح هذا المكوّن للمطوّرين تجاوز ذاكرة التخزين المؤقت للقرص، ما يوفّر تحكّمًا دقيقًا وتخصيصًا للحفاظ على جاهزية الوسائط في الذاكرة قبل أن يضغط المستخدم على زر التشغيل. يمكنك قراءة سلسلة المدوّنات هذه لفهم التفاصيل الفنية حول تشغيل الوسائط باستخدام PreloadManager.
كيف حقّقت Meta تشغيلاً فوريًا حقيقيًا
التعقيدات الحالية
في السابق، كانت Meta تستخدم مزيجًا من الإحماء (لإعداد المشغّلات) والجلب المسبق (لتخزين المحتوى مؤقتًا على القرص) لعرض الفيديوهات. على الرغم من أنّ هذه الطرق ساعدت في تحسين كفاءة الشبكة، إلا أنّها واجهت تحديات كبيرة. تطلّب الإحماء إنشاء نُسخ متعددة من المشغّل بشكل تسلسلي، ما استهلك قدرًا كبيرًا من الذاكرة وحدّ من التحميل المُسبق لعدد قليل من الفيديوهات فقط. يعني هذا الطلب الكبير على الموارد أنّه يمكن تطبيق حل أكثر فعالية وقابلية للتوسّع لتوفير ميزة التشغيل الفوري المتوقّعة في الخلاصات الحديثة على وسائل التواصل الاجتماعي التي يتم التنقّل فيها بسرعة.
دمج PreloadManager في Media3
لتحقيق تشغيل فوري، دمج فريق Media Foundation Client في Meta واجهة PreloadManager من Jetpack Media3 في Facebook وInstagram. واختاروا DefaultPreloadManager لتوحيد أنظمة التحميل المُسبق والتشغيل. تطلّب هذا الدمج إعادة تصميم بنية Meta الحالية لإتاحة مشاركة الموارد بكفاءة بين مثيلات PreloadManager و ExoPlayer. وقد وفّر هذا التحوّل الاستراتيجي ميزة أساسية في البنية، وهي القدرة على تنفيذ مهام التحميل المُسبق بالتوازي وإدارة العديد من الفيديوهات باستخدام مشغّل واحد. وقد أدى ذلك إلى زيادة سعة التحميل المُسبق بشكل كبير مع التخلص من التعقيدات الكبيرة في الذاكرة التي كانت تواجههم في النهج السابق.
التحسين وضبط الأداء
بعد ذلك، أجرى الفريق اختبارات وتكرارات مكثّفة لتحسين الأداء على مستوى منظومة الأجهزة العالمية المتنوعة في Meta. وقد تسبّب التحميل المُسبق المكثّف الأولي في حدوث مشاكل في بعض الأحيان، بما في ذلك زيادة استخدام الذاكرة وبطء أداء الانتقال للأعلى أو للأسفل. لحلّ هذه المشكلة، تم تحسين عملية التنفيذ من خلال إجراء قياسات دقيقة للذاكرة، ومراعاة تجزئة الأجهزة، وتخصيص النظام ليتوافق مع أنماط واجهة مستخدم معيّنة.
ضبط التنفيذ وفقًا لأنماط معيّنة لواجهة المستخدم
طبّقت Meta استراتيجيات مختلفة للتحميل المُسبق وخصّصت السلوك ليتوافق مع أنماط واجهة المستخدم المحدّدة لكل تطبيق:
- آخر الأخبار في Facebook: تعطي واجهة المستخدم الأولوية للفيديو الذي يظهر حاليًا. يحمّل المدير الفيديو الحالي فقط مسبقًا لضمان بدئه في اللحظة التي يتوقف فيها المستخدم عن التمرير. يؤدي هذا التركيز على "المنشورات الحالية فقط" إلى تقليل استهلاك البيانات واستهلاك الذاكرة في بيئة قد يرى فيها المستخدمون العديد من المنشورات الثابتة بين الفيديوهات. على الرغم من أنّ النظام مصمّم حاليًا لتحميل الفيديو المعروض مسبقًا فقط، يمكن تعديله لتحميل الفيديوهات القادمة (المستقبلية) مسبقًا أيضًا.
- Instagram Reels: هذه بيئة مخصّصة للفيديوهات فقط حيث يمرّر المستخدمون المحتوى عموديًا. بالنسبة إلى واجهة المستخدم هذه، نفّذ الفريق استراتيجية "التحميل المُسبَق المجاور". يحتفظ PreloadManager بالفيديوهات مباشرةً بعد أن يصبح Reel الحالي جاهزًا في الذاكرة. يضمن هذا النهج الثنائي الاتجاه أن يظل الانتقال فوريًا وسلسًا، سواء مرّر المستخدم سريعًا للأعلى أو للأسفل. وكانت النتيجة تحسّنًا كبيرًا في جودة التجربة (QoE)، بما في ذلك تحسينات في بدء التشغيل والوقت المستغرَق لعرض الإطار الأول للمستخدم.
توسيع نطاق الوصول إلى منظومة متكاملة ومتنوعة من الأجهزة العالمية
إنّ توسيع نطاق حزمة فيديو عالية الأداء على مليارات الأجهزة يتطلّب أكثر من مجرد التحميل المُسبق المكثّف، بل يتطلّب ذكاءً. واجهت Meta تحديات أولية تتعلق بضغط الذاكرة وتأخّر التمرير، خاصةً على الأجهزة ذات المواصفات المتوسطة والمنخفضة. لحلّ هذه المشكلة، أنشأ الفريق نظامًا لرصد الضغط على الجهاز حول عملية تنفيذ Media3. تراقب التطبيقات الآن إشارات الإدخال/الإخراج ووحدة المعالجة المركزية في الوقت الفعلي. إذا كان الجهاز تحت ضغط كبير، يتم إيقاف التحميل المُسبق مؤقتًا لإعطاء الأولوية لاستجابة واجهة المستخدم.
يضمن هذا التحسين المتوافق مع الأجهزة أنّ ميزة التشغيل الفوري لا تؤثر سلبًا في استقرار النظام، ما يتيح حتى لمستخدمي الأجهزة القديمة الاستمتاع بخلاصة أكثر سلاسة وبدون انقطاع.
مزايا البنية وصحة الرمز البرمجي
بالإضافة إلى المقاييس الموجّهة للمستخدمين، قدّم الانتقال إلى Media3 PreloadManager مزايا طويلة الأمد على مستوى البنية. ومع أنّ عملية الدمج والضبط تطلّبت تكرارات متعددة لتحقيق التوازن في الأداء، أصبحت قاعدة الرموز البرمجية الناتجة أكثر قابلية للصيانة. وجد الفريق أنّ واجهة برمجة التطبيقات PreloadManager تتكامل بسلاسة مع منظومة Media3 المتكاملة الحالية، ما يتيح مشاركة الموارد بشكل أفضل. بالنسبة إلى Meta، كان استخدام Media3 PreloadManager استثمارًا استراتيجيًا في مستقبل مشاهدة الفيديوهات.
ومن خلال استخدام ميزة التحميل المُسبق وإضافة بوابات ذكية للأجهزة، نجحت الشركة في زيادة إجمالي وقت المشاهدة على تطبيقاتها وتحسين التفاعل العام لمنتدى المستخدمين العالمي.
التأثير الناتج على Instagram وFacebook
وقد حقّقت البنية الاستباقية تحسينات فورية وقابلة للقياس على مستوى كلتا المنصتَين.
- حقّق Facebook سرعة أكبر في بدء تشغيل الفيديوهات، وانخفاضًا في معدّلات توقّف التشغيل، وانخفاضًا في الجلسات السيئة (مثل إعادة التخزين المؤقت وتأخّر وقت البدء وانخفاض الجودة وما إلى ذلك)، ما أدّى بشكل عام إلى زيادة وقت المشاهدة.
- لاحظ Instagram بدء تشغيل الفيديوهات بشكل أسرع وزيادة في إجمالي وقت المشاهدة. وأدى التخلص من وقت الاستجابة للانضمام (الفاصل الزمني من إجراء المستخدم إلى عرض الإطار الأول) إلى زيادة مقاييس التفاعل بشكل مباشر. وقد أدّى انخفاض عدد الانقطاعات بسبب تقليل التخزين المؤقت إلى مشاهدة المستخدمين للمزيد من المحتوى، وهو ما ظهر من خلال مقاييس التفاعل.
الدروس الهندسية الرئيسية على نطاق واسع
مع تطوّر عادات استهلاك الوسائط، سيستمر الطلب على التجارب الفورية في النمو. ومن خلال تنفيذ إدارة الذاكرة الاستباقية والتحسين لتلبية احتياجات التوسّع وتنوّع الأجهزة، يمكنك ضمان تلبية تطبيقك لهذه التوقعات بكفاءة.
- إعطاء الأولوية للتحميل المُسبق الذكي
ركِّز على تقديم تجربة موثوقة من خلال تقليل حالات التقطّع وأوقات التحميل من خلال التحميل المُسبق. بدلاً من ذاكرة التخزين المؤقت للقرص البسيطة، يضمن استخدام التحميل المُسبق على مستوى الذاكرة أن يكون المحتوى جاهزًا في اللحظة التي يتفاعل فيها المستخدم معه.
- مواءمة عملية التنفيذ مع أنماط واجهة المستخدم
يمكنك تخصيص سلوك التحميل المُسبق وفقًا لواجهة مستخدم تطبيقك. على سبيل المثال، يمكنك استخدام التركيز على "المحتوى الحالي فقط" للخلاصات المختلطة مثل Facebook لتوفير الذاكرة، واستراتيجية "التحميل المُسبق للمحتوى المجاور" للبيئات العمودية مثل Instagram Reels.
- الاستفادة من Media3 للحفاظ على سلامة الرموز البرمجية على المدى الطويل
يتيح التكامل مع واجهات برمجة تطبيقات Media3 بدلاً من حلّ التخزين المؤقت المخصّص مشاركة الموارد بشكل أفضل بين المشغّل وPreloadManager، ما يتيح لك إدارة فيديوهات متعددة باستخدام مثيل مشغّل واحد. يؤدي ذلك إلى إنشاء قاعدة رموز برمجية جاهزة للمستقبل يسهل على الفِرق الهندسية صيانتها وتحسينها بمرور الوقت، فضلاً عن الاستفادة من آخر تحديثات الميزات.
- تنفيذ تحسينات متوافقة مع الأجهزة
يمكنك توسيع نطاق وصولك إلى السوق من خلال الاختبار على أجهزة مختلفة، بما في ذلك الطُرز المتوسطة والمنخفضة المواصفات. استخدِم إشارات في الوقت الفعلي، مثل وحدة المعالجة المركزية (CPU) والذاكرة والإدخال/الإخراج، لتعديل الميزات واستخدام الموارد بشكل ديناميكي.
مزيد من المعلومات
للبدء والاطّلاع على مزيد من المعلومات، يُرجى الانتقال إلى
- اطّلِع على مستندات PreloadManager في Media3.
- يمكنك قراءة سلسلة المدوّنات للحصول على تفاصيل فنية متقدّمة وتفاصيل حول التنفيذ.
- يمكنك الاطّلاع على نموذج التطبيق لمعرفة طريقة عمل التحميل المُسبَق.
أصبحت الآن على دراية بأسرار التشغيل الفوري. ننصحك بتجربتها.
-
دراسات الحالةGrab هو التطبيق الفائق الرائد في جنوب شرق آسيا، ويقدّم خدمات التوصيل والتنقّل والخدمات المالية لملايين المستخدمين في ثمانية بلدان من خلال تطبيق واحد.
Ajesh Pai, Nguyen Van Minh, Tracy Agyemang • مدّة القراءة: 5 دقائق -
دراسات الحالةWhatsApp هو أكبر منصة مراسلة في العالم، ويستخدمه مليارات الأشخاص على مستوى العالم. وهو أداة التواصل التلقائية للمستخدمين في مختلف المناطق، إذ يربط بينهم من خلال رسائل خاصة وموثوقة وآمنة.
Niharika Arora, Tracy Agyemang, Mayank Jain • مدّة القراءة: 8 دقائق -
دراسات الحالةتتمثل مهمة Tinder في تعزيز العلاقات الحقيقية وإلهامها من خلال جعل اللقاءات سهلة وممتعة لكل جيل جديد من العزاب.
Ajesh Pai, Ulises Uriel Verduzco Díaz , Tracy Agyemang • مدّة القراءة: 4 دقائق
يمكنك تلقّي آخر الإحصاءات حول تطوير تطبيقات Android في بريدك الوارد أسبوعيًا.