[英]How to update an Android widget when the screen is turned On/Off?
我编写了一个电池监视器小部件,当屏幕打开时,我可以使用带有广播接收器和警报的后台服务来更新它。 我也可以在屏幕关闭时停止更新。 但是,该服务仅在系统停止后台服务之前运行。
我该如何解决这个问题? 我开始研究 WorkManager 但还没有找到我要找的东西。
任何可以为我指明正确方向的建议将不胜感激。
您可以创建一个监听器 class 来监听 android 锁屏和解锁事件,使用广播接收屏幕的 state。
private class ScreenBroadcastReceiver : BroadcastReceiver
{
private String action = null;
public override void OnReceive(Context context, Intent intent)
{
action = intent.Action;
if (Intent.ActionScreenOn == action)
{ // screen on
mScreenStateListener.onScreenOn();
}
else if (Intent.ActionScreenOff == action)
{ // screen off
mScreenStateListener.onScreenOff();
}
else if (Intent.ActionUserPresent == action)
{ // unlock
mScreenStateListener.onUserPresent();
}
}
}
有关监听器的更多代码,您可以参考下面的链接。 https://stackoverflow.com/a/55014763/11850033
您可以覆盖AppWidgetProvider
的 OnUpdate 。 然后在您的 Widget 上触发 onUpdate。 如何在按钮单击时调用小部件的 onUpdate 方法?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.