2013-08-21 258 views
0

我有一个显示电池电量的通知。通知是在服务中,因为即使应用程序关闭,服务仍然运行,它可以显示电池的百分比..我注意到当通知处于活动状态时,电池电量降低得更快。是否有解决方法这个问题?我的服务通知会造成电池电量不足

编辑:服务

@Override 
    public void onCreate(){ 
     super.onCreate(); 
     mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 
     new IntentFilter(Intent.ACTION_BATTERY_CHANGED);  
    } 

,并在清单的 的onCreate我写这太ACTION_BATTERY_CHANGED

+0

我认为这是正常的,因为你不断在后台运行服务,它会消耗非常显着的电池寿命。顺便说一下,为什么会使用通知显示电池电量?电池状态是否不够? –

+0

因为我的应用程序显示(在我的意思是MainActivity内)一些电池信息,并且在设置中您可以激活电池电量和温度的永久通知。这是其他应用程序的功能:)但是,请吃电池。这是一个矛盾!这是一个电池保护程序的应用程序!所以你认为没有别的办法? –

+0

这是应用程序https://play.google.com/store/apps/details?id=com.dd.batterystats –

回答

0

理想情况下,你会希望只更新您的看法电池状态改变时。您是否尝试过监视此广播操作而不是轮询电池电量?

http://developer.android.com/reference/android/content/Intent.html#ACTION_BATTERY_CHANGED

这样,你只需要一些执行操作时的状态的变化,而不是所有在后台的时候。

+0

我已经使用电池更换意图。但似乎更新并不总是当电池更换水平,但也(我不知道为什么)每隔10秒。但是..我从来没有写过这样的东西。 –

+1

看起来电池更换事件是周期性发生的,无论电池状态如何变化。这里有一个可能的解决方案,使用轮询作为解决方法:http://stackoverflow.com/questions/7624882/action-battery-changed-firing-like-crazy – MattMatt

+0

那么你认为这是更好的决定一个间隔来更新例如? –