[英]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.