簡體   English   中英

更改日期時更新小部件

[英]Update widget on day change

我有一個可顯示當前日期的小部件。 但是,僅當用戶在主要活動中執行操作時,小部件才會更新。

我將如何強迫小部件在午夜后下次打開手機時進行更新以反映新日期?

我知道我可能需要AlarmManager,但是我不清楚參數。 我是否將其放在我的主要活動中,並讓其調用在小部件上調用update的方法?

以類似的方式,我有一個要在特定時間運行的服務。 該服務完成后,它便會更新我的小部件並停止自身(該服務)。 這是我在指定時間啟動服務的代碼段

Intent mSrvcIntent = new Intent(packageContext, MyService.class);
PendingIntent mSrvcPendingingIntent = PendingIntent.getService(packageContext,0, mSrvcIntent, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager mAlarmManager = (AlarmManager)context.getSystemService(android.content.Context.ALARM_SERVICE);
mAlarmManager.set(AlarmManager.RTC_WAKEUP, time to start service, mSrvcPendingingIntent);

我希望這足夠使您能夠解決您的問題

將其投放到清單小部件接收者

 <intent-filter>
            <action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
            <action android:name="android.intent.action.DATE_CHANGED" />...

onReceive()將觸發

這對我有用:

<intent-filter>
    <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
    <action android:name="android.intent.action.DATE_CHANGED"/>
    <action android:name="android.intent.action.TIME_SET"/>
</intent-filter>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM