Android 2.1 以降をサポートする必要があります。Android 2.1 では CalendarContract を使用できないことがわかっているため、次の回避策を実行しました。
Intent intent = new Intent(Intent.ACTION_EDIT)
.setType("vnd.android.cursor.item/event")
.putExtra("beginTime", beginTime.getTimeInMillis())
.putExtra("title", title)
.putExtra("description", description)
.putExtra("eventLocation", location)
.putExtra("allDay", allDay)
.putExtra(Intent.EXTRA_EMAIL, email );
if(!allDay) {
intent.putExtra("endTime", endTime.getTimeInMillis());
}
startActivity(intent);
これはこれまでのところ非常にうまく機能しています。2.1 から 4.1 までテストしました。
リマインダーも追加したいのですが、インテントを使用してそれを行う方法に関するドキュメントが見つかりません。誰にも例がありますか?カレンダーに書き込むための権限をマニフェストに追加することは避けたいので、それが必要な提案があれば使用できません。