我想了解更多关于 Android 服务/广播的信息,所以我开始了一个简单的项目,创建一个电池监控应用程序。结果还不错,我用了几天了,但我想添加一个新功能:显示手机从什么时候开始充电/放电。
首先,我想我会在我的 BoradcastReciever 扩展类中创建两个静态字段,在那里我获取并发布有关电池的数据,一个用于实际状态(充电/放电),另一个用于状态变化发生时的时间. 这样,我可以从当前时间中减去最后一次更改,并准确知道手机从什么时候开始充电/放电。
但是这个解决方案有一个问题:当用户启动应用程序时,它一开始不会显示正确的数据。我不会大惊小怪,但我看到 Android 在某处跟踪这些数据,因为在我的手机设置中我找到了这些信息,所以为什么要采取艰难的方式。
所以我的问题是: 有没有一种简单的方法可以从 Android 系统中获取上次充电状态更改的日期/时间(无论是什么格式)?
我查看了BatteryManager 参考,但没有以我所寻求的内容命名的常量,我可以使用它来从接收器的 Intent 获取信息。