【问题标题】:How much battery would drain an Android service with BroadcastReceiver使用 BroadcastReceiver 会消耗多少电量
【发布时间】:2016-10-20 23:08:10
【问题描述】:

我们以下面的服务为例:

public class MyService extends Service {

    final BroadcastReceiver mScreenStateReceiver = new BroadcastReceiver() {
        @Override public void onReceive(Context context, Intent intent) {
            //Do nothing
        }
    };

    @Override
    public void onCreate() {
        super.onCreate();
        IntentFilter intentFilter = new IntentFilter();
        intentFilter.addAction(Intent.ACTION_SCREEN_OFF);
        intentFilter.addAction(Intent.ACTION_SCREEN_ON);
        registerReceiver(mScreenStateReceiver, intentFilter);
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        unregisterReceiver(mScreenStateReceiver);
    }

}

请注意,此 BroadcastReceiver 需要在 RUNTIME 注册(比如说,服务或活动)。这就是我使用服务的原因

假设该服务将在设备打开的整个过程中运行,有一个工作的广播接收器并且什么都不做,它会耗尽电池寿命吗?如果会,多少钱?运行 Service 或 Broadcast Receiver 是否会使 Android 框架消耗更多电量?

我知道,我是个电池续航狂

【问题讨论】:

    标签: android service broadcastreceiver battery


    【解决方案1】:

    BroadcastReciever 本身不会消耗太多电池。您在其中执行的任务决定了消耗了多少电池。 参考thisthis

    【讨论】:

      猜你喜欢
      • 2017-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多