Just a quick note how to set specific repetition rule when creating new calendar event. I haven’t found any documentation about this and had to inspect platform code.

Intent intent = new Intent(Intent.ACTION_EDIT);
intent.putExtra("beginTime", date);
intent.putExtra("allDay", true);
intent.putExtra("rrule", "FREQ=YEARLY");
intent.putExtra("endTime", date);
intent.putExtra("title", summary);

date (long) is time in ms
allDay means “all day event”
rrule is the repetition rule in specific format (RFC 2445). In my example “FREQ=YEARLY” means yearly repetition.