Java/Android AlarmManager电池消费者?
在我们的firebase
安全应用程序中,我们使用Android AlarmManger
保持firebase
侦听器的活动状态
AlarmManager
在设备启动时通过BroadcastReceiver
调度
警报每5秒唤醒一次CPU,并检查firebase
侦听器是否准备就绪,否则启动它
使用该模式,我们注意到对电池寿命的影响 你能告诉我最好的款式吗
public class Alarm extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "");
wl.acquire();
Firebase.setAndroidContext(context);
FirebaseUtils.startListeners(context);
wl.release();
}
public void SetAlarm(Context context)
{
AlarmManager am =( AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(context, Alarm.class);
PendingIntent pi = PendingIntent.getBroadcast(context, 0, i, 0);
am.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), 5000, pi); // Millisec * Second * Minute
}
}
# 1 楼答案
如果你真的不需要每5秒重复一次,你可以尝试增加你的重复间隔。每5秒播放一次应用程序,就像不断玩应用程序一样。试着让它保持30或50秒