1

我正在制作一个小部件应用程序,我希望它的一部分每天更新一次 android:updatePeriodMillis="86400000",另一部分每分钟更新AlarmManager一次。但我认为如果你使用AlarmManager你必须把android:updatePeriodMillis="0". 有可能这样做吗?

4

2 回答 2

0

我相信您可以同时使用 updatePeriodMillis 和 AlarmManager。但无论如何,您始终可以依靠 AlarmManager 进行两次更新,为同一个小部件更新设置两个不同的“警报”。

于 2012-11-26T12:19:18.557 回答
0

最后这项工作(两个警报,每分钟一个,每天一个):

    AlarmManager alarmManager = (AlarmManager) context
            .getSystemService(Context.ALARM_SERVICE);
    Calendar calendar = Calendar.getInstance();
    calendar.setTimeInMillis(System.currentTimeMillis());
    calendar.set(Calendar.SECOND, 00);
    alarmManager.setRepeating(AlarmManager.RTC, 
            calendar.getTimeInMillis(),
            60000, funtion1(context));

    Calendar calendar2 = Calendar.getInstance();
    calendar2.set(Calendar.HOUR_OF_DAY, 00);
    calendar2.set(Calendar.MINUTE, 00);
    calendar2.set(Calendar.SECOND, 00);
    alarmManager.setRepeating(AlarmManager.RTC,
            calendar2.getTimeInMillis(),
            86400000, funtion2(context));
于 2012-12-15T18:10:34.183 回答