لمحة عن الحفاظ على البطارية
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يعتمد المستخدمون على أجهزتهم الجوّالة في كل شيء تقريبًا هذه الأيام، بدءًا من إرسال الرسائل الإلكترونية وإدارة الشؤون المالية، وصولاً إلى بث الفيديوهات وبث ألعاب الفيديو وتشغيلها. ولكي تكون معظم التطبيقات مفيدة، فإنّها تتطلّب بيانات وصورًا ووسائط أخرى من خدمات بعيدة. من المهم تذكُّر أنّ تطبيقك هو واحد من بين العديد من التطبيقات على جهاز المستخدم، وكلها تتنافس على موارد الشبكة.
وإذا لم تتم إدارتها بشكل جيد، يمكن أن يؤدي ذلك إلى تأثير كبير وسلبي في أداء البطارية، كما يمكن أن يؤدي إلى استخدام معدل نقل البيانات المحدود للمستخدم بشكل غير ضروري.
بدءًا من Android 8.0، تم طرح العديد من التحديثات على نظام التشغيل التي تساعد في الحفاظ على البطارية وتجربة المستخدم وسلامة النظام. ومع ذلك، هناك اعتبارات واستراتيجيات وأنماط إضافية يمكنك بصفتك مطوّرًا استخدامها أيضًا. يمكن أن تكون الطلبات التي يرسلها تطبيقك إلى الشبكة سببًا رئيسيًا في استنزاف البطارية لأنّها تعتمد على موجات الراديو الخاصة بشبكة الجوّال وشبكة Wi-Fi التي تستهلك قدرًا كبيرًا من الطاقة.
في هذا الدليل، سنتعرّف على ما يلي:
- كيف يتفاعل نموذج الاتصال في تطبيقك مع آلة حالة الراديو اللاسلكي
- كيفية استخدام أساليب لتقليل تأثير اتصال البيانات
- كيفية تحديد المشاكل المتسببة في بطء الاتصال وحلّها
- كيفية تنفيذ العمل في الخلفية فقط في ظل شروط معيّنة، مثل عندما يكون الجهاز قيد الشحن أو متصلاً بشبكة Wi-Fi
- كيفية تتبُّع استخدام تطبيقك للبطارية بمرور الوقت
أخيرًا، ستتعرّف على ثلاث فئات عامة من التحديثات:
التحديثات التي يبدأها المستخدم والتحديثات التي يبدأها التطبيق والتحديثات التي يبدأها الخادم،
بالإضافة إلى أدوات وأساليب لزيادة كفاءة كل فئة إلى أقصى حد.
في النهاية، تقع على عاتقنا جميعًا كمنتدى مطوّرين مسؤولية تقديم أفضل تجربة استخدام للتطبيقات.
المواد الإضافية
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-08-27 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-08-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["Users rely on their mobile devices for virtually everything these days, from\nsending emails and managing finances, to streaming videos and streaming and\nplaying video games. In order to be useful, most apps require data, images, and\nother media from remote services. It's important to remember that your app is\njust one of many apps on the user's device, all competing for network resources.\nManaged poorly, this can have a dramatic and detrimental impact on battery\nperformance and unnecessarily use the user's limited network bandwidth.\n\nStarting with [Android 8.0](/about/versions/oreo/android-8.0-changes), several\nupdates were introduced to the OS which help preserve battery, user experience,\nand system health. However, there are additional considerations, strategies, and\npatterns that you as a developer can employ yourself, as well. Requests that\nyour app makes to the network can be a major cause of battery drain because\nthey rely on the heavily power-consuming cellular and Wi-Fi radios.\n\nIn this guide, you'll learn about the following:\n\n- How your app's connectivity model interacts with the wireless radio state machine.\n- How to employ techniques for minimizing the impact of your data connection.\n- How to troubleshoot slow connections.\n- How to run background work only under specific conditions such as when the device is charging or on Wi-Fi.\n- How to track your app's battery usage over time.\n\nFinally, you'll learn about three broad categories of updates:\n[User-initiated](/develop/connectivity/minimize-effect-regular-updates#user-initiated),\n[App-initiated](/develop/connectivity/minimize-effect-regular-updates#app-initiated),\nand\n[Server-initiated](/develop/connectivity/minimize-effect-regular-updates#server-initiated),\nwith tools and techniques for maximizing the efficiency of each category.\n\nUltimately, it's all of our responsibilities as a developer community to provide\nthe best app experience for our users.\n\nAdditional material"]]