我尝试设置一个闹钟以每 12 个月触发一次服务。
所以我尝试了以下方法:
Calendar calendar = Calendar.getInstance();
calendar.set(calendar.MONTH, calendar.get(Calendar.MONTH) + 12);
Log.e("calendar", "= " + Calendar.MONTH + " " + calendar.get(Calendar.MONTH) + 10);
long sdl = calendar.getTimeInMillis();
Intent myIntent = new Intent(mContext,
AlarmAlertBroadcastReciever.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(mContext, 0, myIntent, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager = (AlarmManager) mContext
.getSystemService(Context.ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, sdl, pendingIntent);
上面不是每12个月触发一次,我试过每10个月触发一次?怎么办?
最佳答案
如果您希望每 12 个月触发一次,则向 Calendar 实例添加一年。像这样的 -
calendar.add(calendar.YEAR, 1);
此外,如果您真的想坚持增加月份,这就是解决方案 -
calendar.add(calendar.MONTH, 12);
注意 - 我使用的是 add()
而不是 set()
。
希望对您有所帮助。
关于android - Android 中的 Calendar.Month,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33404202/