在同一天在日历中设置时间会移动到第二天

Setting a time in calendar in the same day moves to the next day

我正在显示一个 TimePicker,我希望在同一天的那个时间触发一个警报,但奇怪的是,它在第​​二天被调用,除非用户选择的时间已经过去,在这种情况下警报立即触发,你能帮我弄清楚发生了什么吗?

startingHour = timePickerStartingHour.getCurrentHour();
startingMinute = timePickerStartingHour.getCurrentMinute();

Calendar cal = Calendar.getInstance();
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MINUTE, startingMinute);
cal.set(Calendar.HOUR, startingHour);

    Intent intent = new Intent(getActivity(), NotificationBroadcast.class);
    PendingIntent pendingIntent = PendingIntent.getBroadcast(getActivity(), 100000+i, intent, PendingIntent.FLAG_UPDATE_CURRENT);

    AlarmManager alarmManager = (AlarmManager) getActivity().getSystemService(Context.ALARM_SERVICE);
    alarmManager.setExact(AlarmManager.RTC, cal.getTimeInMillis(), pendingIntent);

如果有人遇到这个问题,请将 Calendar.HOUR 替换为 Calendar.HOUR_OF_DAY,这对我有用,支持 mgcaguioa