我目前正在开发一个应用程序,该应用程序可以同步用户 Google Drive 中的一个特定文件夹。我需要查找该特定文件夹中的任何文件/文件夹何时发生更改。实际的同步过程很简单,但我不想每隔几秒就进行一次完全同步。我正在考虑以下方法之一:
1) 监视更改源并查找任何文件更改
此方法很简单,但如果驱动器中的任何文件发生更改,它将导致同步。
2)经常请求整个驱动器中的所有文件,例如。service.files().list().execute() 并在特定树中查找更改。这是一种蛮力方法。如果用户的驱动器中有 1000 个文件,这将太慢。
3) 从特定文件夹开始,然后向下移动文件夹树以查找更改。如果特定树中只有几个目录,这种方法会很快,但仍然会导致大量的 API 请求。
有没有更好的方法来查找特定文件夹及其内容是否已更改?是否有任何优化可以应用于方法 1,2 或 3。