1

我正在开发一个应用程序。我在设备日历中设置提醒。我通过从 for() 循环调用 addReminder 方法在我的应用程序中设置多个提醒。设置提醒的代码如下。

private void addReminder(int statrYear, int startMonth, int startDay, int startHour, int startMinut, String title){
    // Convert start of begin time of reminder in milliseconds.
    Calendar beginTime = Calendar.getInstance();
    beginTime.set(statrYear, startMonth, startDay, startHour, startMinut);
    long startMillis = beginTime.getTimeInMillis();

    // String to access default google calendar of device for Event setting.
    String eventUriString = "content://com.android.calendar/events";

    // Creation of Event.
    ContentValues eventValues = new ContentValues();
    // Set calendar as 1 for default calendar.
    eventValues.put(Events.CALENDAR_ID, 1);
    // Set title as user define.
    eventValues.put(Events.TITLE, title);
    // Set description as user define.
    eventValues.put(Events.DESCRIPTION, "MYApp");
    // Set location as user define.
    eventValues.put(Events.EVENT_TIMEZONE, "India");
    // Set start time as system time or time converted in milliseconds.
    eventValues.put(Events.DTSTART, startMillis);
    // Set status of event as 1.
    eventValues.put("eventStatus", 1);
    // Set visibility of event as 3 (public).
    eventValues.put("visibility", 3);
    // Set transparency as 0. No other app seen through reminder.
    eventValues.put("transparency", 0);
    // Set alarm as 1. Ringing.
    eventValues.put(Events.HAS_ALARM, 1);

    // Set Event in calendar.
    Uri eventUri = getContentResolver().insert(Uri.parse(eventUriString), eventValues);
    // Getting ID of event in Long.
    long eventID = Long.parseLong(eventUri.getLastPathSegment());

    /***************** Event: Reminder(with alert) Adding reminder to event *******************/
    // String to access default google calendar of device for reminder setting.
    String reminderUriString = "content://com.android.calendar/reminders";      
    ContentValues reminderValues = new ContentValues();

    // Set reminder on Event ID.
    reminderValues.put("event_id", eventID);
    // Set reminder minute before.
    reminderValues.put("minutes", 1);
    // Set method of reminder
    reminderValues.put("method", 1);        

    @SuppressWarnings("unused")
    //Setting reminder in calendar on Event.
    Uri reminderUri = getContentResolver().insert(Uri.parse(reminderUriString), reminderValues);
}

调用上述方法的 for 循环是:

for(int i=0; i<numberOfReminder; i++){
    addReminder(statrYear, startMonth, startDay, startHour, startMinut, title);
}

现在我的需要是:

我想以秒为单位计算在日历中设置一个提醒的时间。以及设置所有提醒所需的总时间,提醒的总数是在运行时给出的。

那么我应该怎么做才能以秒或米莉秒为单位计算设置一个和多个提醒的时间。

4

1 回答 1

0

有几种解决方案:

  1. 使用日志信息。
  2. 像这样测量时间:

    长开始 = System.currentTimeMillis();

    提醒设置

    长端 = System.currentTimeMillis(); //或 start = start - System.currentTimeMillis();

    然后得到 end - start = ? *请注意,这是以毫秒为单位的,因此您需要将其除以 1000 才能获得秒数。

干杯

于 2013-02-26T11:57:47.503 回答