我有这个代码
Calendar cal = Calendar.getInstance();
cal.set(Integer.parseInt(data_scelta_splittata[2]),Integer.parseInt(data_scelta_splittata[1]),Integer.parseInt(data_scelta_splittata[0]),Integer.parseInt(ora_scelta_splittata[0]),Integer.parseInt(ora_scelta_splittata[1]));
Intent intent = new Intent(Intent.ACTION_EDIT);
intent.setType("vnd.android.cursor.item/event");
intent.putExtra("beginTime", cal.getTimeInMillis());
intent.putExtra("allDay", "allDayFlag");
intent.putExtra("rrule", "FREQ=DAILY");
intent.putExtra("endTime", cal.getTimeInMillis());
intent.putExtra("title", "Avviso Bioscalin "+prodotto);
startActivity(intent);
问题是我需要同时添加3个事件,这个代码添加一个事件并提示用户添加预编译的日历,但我不能这样做3次,对用户来说很无聊。任何想法?
答案 0 :(得分:0)
如果你在4.0+工作,那就有CalendarContract。然而,在ICS之前,您的选择有限。即使您现在启动的活动也无法在制造商更换日历应用的Android设备上运行。
没有任何方法可以操纵vnd.android.cursor.item意图沉默或执行多个请求。此外,虽然您可以通过各种意图与日历应用程序进行交互,但此交互不会记录,因此不建议这样做。
您可能会考虑使用Google Calendar API通过REST与用户的日历进行交互。只要您要与之交互的日历是与用户的Google帐户关联的日历,此方法就会为您提供适用于任何Android API级别的代码,以及已替换库存日历应用的设备。缺点是它不能让您将事件添加到用户的Outlook日历中。