1

当我创建/使用Java客户端从我的应用程序更新谷歌事件:当应用程序是在变化的所有者禁用谷歌日历推送通知

events 
.insert(originalCalendarId, googleEvent) 
.setSupportsAttachments(true) 
.execute() 

我仍然得到有关事件创建推通知/更新。 我不想让他们,因为我是谁做了这些变化。这些更改以不同的方式应用于应用程序,在这种情况下,额外的推送通知毫无用处。

但是,我需要在其他地方(另一个应用或Google Web UI)制作新的更改。

有没有办法处理这种情况?也许有一种方法可以让Google知道,不需要特定查询的推送通知。

我也看到有一个属性:

com.google.api.services.calendar.Calendar.Events.Insert#sendNotifications 

但是,不管是什么我这里设置,通知仍然发送。

+0

在[推送通知指南](https://developers.google.com/google-apps/calendar/v3/push)中没有指定专门的方法来执行此操作,因为此功能的目标是侦听一般资源的变化。 “本文档介绍了如何使用推送通知,以便在资源发生变化时通知您的应用程序。” – noogui

回答

1

我认为你已经订阅了一个资源,如果你的应用程序刚刚做了一些更改,你希望不会收到推送通知。所以,你应该使用:

.insert(originalCalendarId, googleEvent) 
.setSupportsAttachments(true) 
.setSendNotifications(false) 
.execute() 

如果您收到任何方式推送通知,请在您的推送通知X-Goog-Channel-ID检查您自己的,以确保为Google问题。我相信你有一些旧的订阅没有正确处理,这就是为什么你收到push notifications的更改。

相关问题