从默认日历的事件描述中打开应用程序?

时间:2017-09-21 12:23:35

标签: android google-calendar-api

我正在尝试使用google calendar api并向其添加events

    /**starting code for adding event */

             event = new Event().setSummary("Meeting with employees")
                    .setLocation("Rehman Trade Center, Sargodha Pakistan")
                    .setDescription("Our team is going to organize a Meeting to discuss the Architecture")
                    .;
            DateTime startDateTime = new DateTime("2017-11-28T09:00:00-07:00");
            EventDateTime start = new EventDateTime()
                    .setDateTime(startDateTime)
                    .setTimeZone("America/Los_Angeles");
            event.setStart(start);

            DateTime endDateTime = new DateTime("2017-11-28T17:00:00-07:00");
            EventDateTime end = new EventDateTime()
                    .setDateTime(endDateTime)
                    .setTimeZone("America/Los_Angeles");
            event.setEnd(end);



            EventAttendee[] attendees = new EventAttendee[]{
                    new EventAttendee().setEmail("xyx@gmail.com"),
                    new EventAttendee().setEmail("abc@gmail.com"),
                    new EventAttendee().setEmail("axc@gmail.com"),

            };
//            event.setAttendees(Arrays.asList(attendees));

            event = mService.events().insert("primary", event).execute();

我从link读到我们可以使用

执行此操作
values.put(CalendarContract.Events.CUSTOM_APP_PACKAGE, getPackageName());
values.put(CalendarContract.Events.CUSTOM_APP_URI, "myAppointment://1");

但是没有找到通过CUSTOM_APP_PACKAGE添加CUSTOM_APP_URIgoogle calendar api的方法。 我感谢您的帮助。感谢

我想要实现的例子。 example

2 个答案:

答案 0 :(得分:2)

这是一个CalendarContract.EventsColumns documentation开始。

protected static interface CalendarContract.EventsColumns
     

“事件”表中其他表连接的列。

从摘要中,您会发现CUSTOM_APP_PACKAGECUSTOM_APP_URI

的实施情况
  

CUSTOM_APP_PACKAGE

String CUSTOM_APP_PACKAGE
     

可提供更丰富的自定义应用的程序包名称   这次活动的经验。请参阅动作类型   ACTION_HANDLE_CUSTOM_EVENT了解详情。

     

CUSTOM_APP_URI

String CUSTOM_APP_URI
     

自定义应用为事件使用的URI。

答案 1 :(得分:1)

您可以使用CUSTOM_APP_PACKAGE执行此操作。你需要使用两个选项CUSTOM_APP_PACKAGE和CUSTOM_APP_URI。

values.put(CalendarContract.Events.CUSTOM_APP_PACKAGE, getPackageName());
values.put(CalendarContract.Events.CUSTOM_APP_URI, "myAppointment://1");