Интеграция с Google Диском и прослушивание push-уведомлений об изменении разрешений для всех содержащихся папок

Я хочу прослушивать изменения разрешений для документов, принадлежащих моему приложению, на Диске пользователя и просматриваю push-уведомления на API Google Диска.

Предположим, я просматриваю все файлы, которые принадлежат моему приложению (используя POSTs формы https://www.googleapis.com/drive/v3/files/{fileId}/watch), и пользователь перемещает несколько таких файлов в папку внутри другой папки внутри другой папки, а затем делится папкой верхнего уровня с другим пользователем . Буду ли я получать push-уведомления для каждого файла в этой папке или мне придется подписываться на изменения в этой папке отдельно?

Если последнее, как мне узнать, что я должен подписаться на эту папку (т.е. как мне получить уведомление о том, что она существует/каков ее идентификатор)?


person Patricia Li    schedule 14.09.2016    source источник


Ответы (1)


Как упоминалось в этом блоге, лучший способ Чтобы держать вас в курсе, нужно позволить вашему приложению подписываться на изменения на диске пользователя и получать уведомления всякий раз, когда происходят изменения.

Подписку можно сделать, как показано в блоге с образцом домена:

String subscriptionId = UUID.randomUUID().toString();
  Channel request = new Channel()
    .setId(subscriptionId)
    .setType("web_hook")
    .setAddress("https://my-host.com/notification");
  drive.changes().watch(request).execute();

При активной подписке Google Диск активирует обратный вызов веб-перехватчика по адресу https://my-host.com/notification.

Вы можете обратиться к документации или попробовать ознакомиться с этой GitHub для получения дополнительной информации и кодов реализации.

Надеюсь, это поможет!

person Teyam    schedule 15.09.2016