Android O电源状态隐式广播替代方案

Android O电源状态隐式广播替代方案,android,Android,由于Android O对隐式广播施加了限制,以下内容不再有效: <receiver android:name=".model.PowerStateBroadcastReceiver" > <intent-filter> <action android:name="android.intent.action.ACTION_POWER_CONNECTED" /> </intent-filter> </receive

由于Android O对隐式广播施加了限制,以下内容不再有效:

<receiver android:name=".model.PowerStateBroadcastReceiver" >
    <intent-filter>
        <action android:name="android.intent.action.ACTION_POWER_CONNECTED" />
    </intent-filter>
</receiver>

:

为了运行作业,电池供电设备“充电”与简单地接通电源并不完全相同。如果设备太忙,即使连接了电源,电池仍在耗尽,则具有此限制的作业将不会运行。这可能发生在一些常见的使用情况下,例如视频聊天,特别是当设备插入USB而不是墙上电源时


对于一个应用程序,其行为取决于知道充电器何时连接(它是一个电池/充电应用程序),现在最好的方法是什么?

使用前台服务。@Commonware可以解决这个问题,但用户不会满意。我已经在设备充电时提供了前台服务(也就是应用程序充电的时候),但我不喜欢全天候收到通知。如果你需要实时反应,我不知道还有其他选择。您可以计划一个
JobScheduler
作业,该作业具有需要安装在充电器上的条件,但不能保证该作业在连接到充电器后立即运行。