كيف يحدد Android ما إذا كان التطبيق يحتوي على "استخدام عالي للبطارية" ضمن "طلبات الموقع الحديثة"؟

StackOverflow https://stackoverflow.com//questions/20012518

سؤال

اعتبارًا من Kitkat (4.4)، أفاد Android أن تطبيقي هو "استخدام عالي للبطارية".

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

أتساءل عما إذا كانت هناك أي نصائح لاستخدام نظام تحديد المواقع العالمي (GPS) مع الاحتفاظ بملصق "استخدام منخفض للبطارية".ربما إذا قمت بالاستطلاع بشكل غير متكرر بما فيه الكفاية - أم أنه تم ترميزه إلى نظام تحديد المواقع العالمي (GPS) = قاتل البطارية؟

يحرر:

أدرك أن تغيير هذه المعلمات سيحافظ على عمر البطارية.كان سؤالي يدور حول ما إذا كان نظام Android سيتعرف على هذه المحاولات للحفاظ على عمر البطارية أم أنه سيصنف تطبيقي ببساطة على أنه يستخدم الطاقة العالية لمجرد أنه يستخدم نظام تحديد المواقع العالمي (GPS).

هل كانت مفيدة؟

المحلول

استخدمت موقع تنصهر (و [EM>ارتباط إزالته ]) وبعد يوم كامل من الحصول على الموقع مرة واحدة كل دقيقة، استخدم طلبي حوالي 4٪ من البطارية.

(الرابط السابق هو الآن موقف للسيارات يحاول تثبيت ملحق المتصفح: http://kpbird.com/2013/06/fused-location-provider-example.html؟m=1 )

نصائح أخرى

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

  1. في الأساس، هل قرأت وثائق Android الخاصة بـ requestLocationUpdates ل مدير الموقع, ، انها تقول:

    requestLocationUpdates (long minTime, float minDistance, Criteria criteria, PendingIntent intent)

    يعد اختيار قيمة معقولة لـ minTime أمرًا مهمًا للحفاظ على عمر البطارية. يتطلب كل تحديث للموقع توفير الطاقة من GPS وWIFI وCell وأجهزة الراديو الأخرى.حدد قيمة minTime بأعلى مستوى ممكن مع الاستمرار في توفير تجربة مستخدم معقولة.إذا لم يكن تطبيقك في المقدمة ويظهر الموقع للمستخدم، فيجب أن يتجنب تطبيقك استخدام موفر نشط (مثل NETWORK_PROVIDER أو GPS_PROVIDER)، ولكن إذا كنت تصر، فحدد حدًا أدنى للوقت قدره 5 * 60 * 1000 (5 دقائق) أو أكبر.إذا كان التطبيق الخاص بك في المقدمة ويظهر الموقع للمستخدم، فمن المناسب تحديد فاصل زمني أسرع للتحديث.

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

  2. يرجى قراءة ما يلي للحصول على بعض الإجابات الجيدة حول معرفة كيفية استنزافها وما يمكن فعله لتقليل استنزاف البطارية:

    نظام Android للاستقصاء المنتظم لنظام تحديد المواقع العالمي (GPS) في الخدمة، مما يزيد من عمر البطارية

    ما هو الأسلوب الأكثر كفاءة في استخدام البطارية لاستخدام LocationClient للحصول على التحديثات بشكل دوري؟

    طريقة جيدة لمعرفة موقع المستخدم في Android

    توفير طاقة البطارية التي تستهلكها خدمات GPS في نظام Android

    هل مزود الموقع حقًا يستنزف البطارية؟

    عمر البطارية في حالة استخدام GPS وتطبيق الخلفية ios/android

    الحفاظ على خدمة GPS حية وتحسين عمر البطارية

أتمنى أن يساعدك هذا.

يحرر:أنا أوافق على @ioan.يمكنك الآن استخدام Fused Location API للحصول على الموقع بسهولة وكفاءة.

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

giveacodicetagpre.

التنفيذ الكامل: https://github.com/bingerz/fastlocation/blob/master/fastlocationlib/src/main/java/cn/bingerz/fastlocation/fortlocation.java

مارك:

  • كل طلب لإكمال الموقع، من الأفضل إزالة reviewupdates، وإلا فإن شريط حالة الهاتف سوف يعرض دائما أيقونة تحديد المواقع
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top