我想在小部件中显示下一个警报设置,因此我试图获取我刚刚在15:30h在手机上设置的警报的下一个警报时间

我正在使用代码:

    String nextAlarm = "";
    if(android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
        try {
            assert alarmManager != null;
            AlarmManager.AlarmClockInfo aci = alarmManager.getNextAlarmClock();
            nextAlarm = aci.toString();
             Log.w("nextAlarm ", aci.toString());

        } catch (Exception e) {
            e.printStackTrace();
        }
    }  else {
        nextAlarm = Settings.System.NEXT_ALARM_FORMATTED;
    }


这将返回logcat中的nextAlarm字符串:W/nextAlarm: android.app.AlarmManager$AlarmClockInfo@4e0bf32
在SdkVersion 29上运行

我做错了什么?

最佳答案

如果需要时间,请使用aci.getTriggerTime()代替aci.toString()AlarmClockInfo::getTriggerTime返回以毫秒为单位的时间戳。

08-04 11:17