1

このメソッドを使用して、カレンダーにイベントを追加します。

private void writeToCalendar() {
   Intent l_intent = new Intent(Intent.ACTION_EDIT);
   l_intent.setType("vnd.android.cursor.item/event");
   l_intent.putExtra(Events.TITLE, "title");
   l_intent.putExtra(Events.DESCRIPTION, "");  // description
   l_intent.putExtra(Events.EVENT_LOCATION, ""); //eventLocation
   l_intent.putExtra(Events.DTSTART, System.currentTimeMillis());  // beginTime
   l_intent.putExtra(Events.DTEND, System.currentTimeMillis() + EVENT_LENGTH);  // endTime
   l_intent.putExtra(Events.ALL_DAY, 0);  // allDay
   l_intent.putExtra(Events.STATUS, Events.STATUS_CONFIRMED);  // eventStatus
   l_intent.putExtra("visibility", 0);  // visibility
   l_intent.putExtra("transparency", 1);  
   l_intent.putExtra(Events.HAS_ALARM, 0);  // hasAlarms
   l_intent.putExtra(Events.ALLOWED_REMINDERS, "");  //allowedReminders
   try {
       startActivity(l_intent);
   } catch (Exception e) {
       Toast.makeText(this.getApplicationContext(), getResources().getText(R.string.calendar_error), Toast.LENGTH_LONG).show();
   }
}

残念ながら、追加するユーザーに提案されたイベントは、10 分に設定されたアラーム (リマインダー) を自動的に取得します (少なくともこれは私の電話で発生します)。ご覧のとおり、許可されたリマインダーを "" に設定し、"hasAlarms" フラグを 0 に設定しようとしました。それでも、イベントを追加すると、リマインダーを 10 分に設定するようにユーザーに自動的に提案されます。ユーザーはイベントを保存する前にリマインダーを削除できますが、これは私が望んでいるものではありません。私のアプリケーションではリマインダーが本当に意味をなさないとすぐに、デフォルトでリマインダーを逃したいと思います。誰かがこれを回避する方法を説明できますか?

ありがとうございました。

4

0 に答える 0