2

我已经集成了 Google Calendar API 并且能够正确地创建会议。由于 google 还允许通过 Google Calendar API 创建 Google Meet 会议 - 我一直在尝试通过 Calendar API 中的 event 对象访问 ConferenceData 对象。像这样的 ConferenceData 在 StackOverflow 上到处都被引用,但无法将其连接到 Android Studio 上的库 - 我正在 Kotlin 中构建应用程序,因此 java/kotlin 解决方案有效。

下面是我正在使用的代码

            val event = Event().setSummary("Event")
                .setDescription(eventDes.toString())

            val _startTime = createCal(booking)
            val startEvent = EventDateTime()
                .setDateTime(DateTime(_startTime.time))

            //add duration to start date to get end date
            _startTime.add(Calendar.MINUTE, booking.getduration()!!.toInt())
            val endEvent = EventDateTime()
                .setDateTime(DateTime(_startTime.time))

            event.start = startEvent
            event.end = endEvent
            event.location = ""


            val map = HashMap<String, String>()
            map["priority"] = "High"
            event.extendedProperties = Event.ExtendedProperties()
            event.extendedProperties.private = map

任何人都可以指导访问和使用 Google Meet 的 ConferenceData 对象的正确方法吗?ConferenceData 目前无法识别...

任何输入都会很棒

谢谢

4

1 回答 1

0

不久前我这样做了,我遇到了两个问题,第一个是会议类型。

不久前我遇到了同样的问题。执行calendar.get并确保您将相同的设置设置为 allowedConferenceSolutionTypes 之一。

{
 "kind": "calendar#calendar",
 "etag": "\"di3Ml2Fd7A\"",
 "id": "ddddd@gmail.com",
 "summary": "Linda Lawton ",
 "description": "test",
 "timeZone": "Europe/Copenhagen",
 "conferenceProperties": {
  "allowedConferenceSolutionTypes": [
   "hangoutsMeet"
  ]
 }
}

第二个问题是记得将 setConferenceDataVersion 设置为 1。

  Event event = new Event();

    event.setStart(new EventDateTime().setDateTime(new DateTime(currentTimeMillis())));
    event.setEnd(new EventDateTime().setDateTime(new DateTime(currentTimeMillis() + 10000000)));

    ConferenceData conferenceData = new ConferenceData();

    conferenceData.setCreateRequest(
            new CreateConferenceRequest()
                    .setConferenceSolutionKey(
                            new ConferenceSolutionKey()
                                    .setType("hangoutsMeet")));

    event.setConferenceData(conferenceData);
    service.events().insert("primary", event).setConferenceDataVersion(1).execute();
于 2022-03-05T11:52:56.400 回答