تستنزف خدمات Google Play البطاريات باستخدام Wakelocks على ذاكرة القراءة فقط المخصصة 5.x. فيما يلي الإصلاحات التي قدمها Cyanogen ومجتمع المطورين في تقرير موجز أنيق ورائع.
Wakelocks هي لعنة البطارية الواعية، وكان خطأ Wakelock هذا يصيب ROM Android لفترة من الوقت. نعم، المشكلة ليست جديدة ولا فريدة من نوعها، ولن يتم حلها نهائيًا حتى تتدخل جوجل، ولكن أثار الإطلاق الأخير لـ CyanogenMod 12 وCyanogenOS (من بين آخرين) جولة جديدة من الاهتمام بـ خدمات Google Play 7.x خطأ SystemUpdateService Wakelock. والخبر السار هو أن CM12 شهد إصلاحًا بالأمس، ويجب تصحيح نظام CyanogenOS بحلول الأسبوع المقبل. السيء؟ لا يزال كل صانع ROM آخر بحاجة إلى مراعاة أحدث مشكلة، والسبب الجذري هو عربات التي تجرها الدواب كما كان دائمًا. ليست هذه هي المرة الأخيرة التي سنجري فيها هذه المحادثة، ولكن الآن دعونا نناقش المشكلة، ونشير إلى التصحيحات وتقارير التقدم، ونعيد طاقة البطارية إلى شكلها القتالي.
من السهل أن نرى أن طاقة الهاتف تنخفض بشكل أسرع مما ينبغي، ولكن ما هي الهواتف/الأقراص المدمجة التي تأثرت، وما هو السبب الجذري؟ لنبدأ بالسؤال الأخير. تحتوي خدمات Google Play على مدقق تحديث عبر الهواء، يسمى SystemUpdateService، وتتمثل مهمته في البحث عن الطلبات عبر الأثير والرد عليها. في ROM المخصصة، تأتي التحديثات من خلال صانع ROM، وليس Google أو شركة الاتصالات، لذلك لا تفعل هذه الخدمة شيئًا سوى عرقلة الطريق. على سبيل المثال، يعد التفاعل المستمر مع التحديثات التي لا يمكن تثبيتها طريقة سريعة لتحقيق أقصى استفادة من خطة البيانات الخاصة بك - وهي مشكلة شائعة أخرى. وبالمثل، تعمل عمليات التحقق من التحديث على تنشيط الهاتف واستنزاف البطارية. الحل السهل لكليهما هو ببساطة قيام صانعي ROM بتعطيل الخدمة واستدعاءها يوميًا، وهو ما يحدث بالضبط ما فعله معظمهم حتى Android 5.x. لسوء الحظ، لوليبوب يلقي وجع في الاعمال.
بدءًا من Android 5.0 وGooogle Play Services 7.x، تشتمل آلية التحديث على مدقق Wakelock. في جوهر الأمر، يتم الآن تنشيط الهاتف لإجراء فحص، ويفشل في الاتصال بخدمة SystemUpdateService (المعطلة)، ويستمر في الانتظار إلى أجل غير مسمى للحصول على استجابة لن تصل أبدًا. من الواضح أن هذه مشكلة، وتؤدي إلى لقطات شاشة لعدادات البطارية المنخفضة وخطوط "اليقظة" الصلبة التي تغمر كل منتدى على مرمى البصر. وبالعودة إلى السؤال الأصلي، فإن الطبيعة العالمية لهذا الخطأ تعني أن انتشاره منتشر على نطاق واسع بالمثل. أي تشغيل الجهاز أي ذاكرة القراءة فقط (ROM) التي لم تقيد SystemUpdateService، أو الموجودة على Lollipop بدون تصحيح خاص بـ Lollipop، ستشاهد عمليات Wakelocks هذه. ولكن لا داعي للخوف، فالحلول بدأت بالفعل في الظهور لهذه الجولة الأخيرة من المشاكل.
هناك عدة طرق لحل هذه المشكلة المزعجة، بدءًا من الإصدارات القابلة للامتداد المخصصة من Play Services إلى تصحيحات ROM الرسمية الأكثر مرونة لنظام CyanogenMod ونظام التشغيل. يعمل حل Cyanogen على إعادة تمكين SystemUpdateService بشكل أنيق، ولكنه يقيد أجهزة الاستقبال الخاصة به. والنتيجة النهائية هي أنه عندما تتحقق الخدمة من وجود تحديثات، فإنها تفشل وتنتهي على الفور. من الواضح أن هذا لا يزال غير كامل، ولكنه خدعة ذكية نأمل أن تظهر في ROM Lollipop الأخرى قريبًا. بالنسبة لاحتياجات بطاريتك، إليك الملخص الكامل لخيارات التصحيح الخاصة بك من الأكثر إلى الأقل فعالية.
- تصحيح جوجل - وهذه مسألة معروفة. الحل من Google هو الطريقة الوحيدة للتأكد من أن هذه المقالة لا تتطلب متابعة أبدًا. لا توجد كلمة عن الحركة.
- سيانوجين مود 11 - حل الشهر الماضي. قم بتحديث ROM الخاص بك.
- سيانوجين مود 12.0 - مطوية في الريبو مستقرة أمس. قم بتحديث ROM الخاص بك.
- سيانوجين مود 12.0 ليلا - مطوية في الريبو أمس. قم بتحديث ليلتك.
- سيانوجين أو إس - الإصلاح قادم الأسبوع المقبل؟ تابع القراءة للحصول على حل مؤقت، وراجع Cyanogen للحصول على مزيد من التفاصيل.
- اختراق الخلد - إذا كنت قد وصلت إلى هذا الحد في هذا المنشور، فأنا أتعاطف معك ومع بطاريتك. المطور المعترف به كالكولين ولحسن الحظ صعدت مع أ إصلاح جزئي في منتدى OnePlus One، لكنه يأتي مع بعض التحذيرات. بدلاً من الحل المفضل على مستوى النظام، فإن هذا الملف القابل للاشتعال هو نسخة معدلة من Play Services مع إزالة الكود المخالف. بحكم طبيعته، سيتم استبدال هذا الملف بواسطة Google عند دفع التحديث التالي لخدمة Play، مما يؤدي إلى قتل جهازك بصمت مرة أخرى. وقد تعهد كالكولين بلطف بتحديث منشوره في كل مرة يحدث فيها ذلك، ولكنها مهمة شاقة وتتطلب اليقظة من جانب الجميع. الجانب الأكثر إثارة للقلق هو أن هذا الملف خاص بالطراز ونظام التشغيل. الإصدار الحالي، Google Play Services v7.3.27-438، هو الإصدار 7.3.27 لنظام Android Lollipop (4)، وهندسة Armeabi-v7a (3)، وشاشات عرض بدقة 480 نقطة في البوصة (8). إذا كان هذا أنت، عظيم! إذا لم يكن الأمر كذلك، فقم بالوميض على مسؤوليتك الخاصة لأن التطبيقات التي تعتمد على الخدمات (وهي معظمها) يمكن أن تحتوي على حالات انقطاع. للتحقق من المعرف المكون من ثلاثة أرقام الذي يستخدمه جهازك، ابحث عن "خدمات Google Play" في "تطبيقات" Android قسم الإعدادات، وابحث عن الأرقام الثلاثة الأخيرة في رقم الإصدار (على سبيل المثال: الإصدار 7.0.99) (1809214-430) ). حظ سعيد!
تعد مشكلات البطارية مزعجة ومكلفة، ولكن على الأقل هذه أغنية ورقصة مألوفة لدينا. الصبر هو الفضيلة المنطوقة هنا. الصبر ومطور ROM سريع الاستجابة. لن يضر Google سريع الاستجابة أيضًا، ولكن قد يتطلب ذلك الكثير.