和你一起终身学习,这里是程序员 Android
本篇文章主要介绍 Android
开发中的 性能 部分知识点,通过阅读本篇文章,您将收获以下内容:
过多的唤醒源wakeups
如何fix 过多唤醒源问题
最佳实践
1.过多的唤醒源wakeups
Wakeups 是 AlarmManager API 中的一种机制 ,它可让开发人员在指定时间设置警报,进而达到唤醒设备的目的。您的应用通过使用 RTC_WAKEUP 或ELAPSED_REALTIME_WAKEUP 标志调用AlarmManager中的set()
方法来设置唤醒警报。当触发唤醒警报后,设备将退出低功耗模式,并在执行警报 onReceive()或 onAlarm() 方法的同时holdspartial wake lock 。如果唤醒警报触发过多,它们可能会耗尽设备的电池电量。
为了帮助您提高应用程序质量,Android会自动监视应用程序是否存在过多的唤醒警报,并以Android vitals的形式显示信息。有关如何收集数据的信息,请参阅Play控制台文档。
如果您的应用过度唤醒设备,则可以使用此页面中的指导来诊断和解决问题。
2. 如何fix 过多唤醒源问题
AlarmManager 是在Android平台的早期版本中推出的,但随着时间的推移,以前需要很多 AlarmManager 的用例现在更好新功能提供服务(比如:WorkManager)。本部分包含有关减少唤醒警报的提示,