Google drive api 谷歌驱动api';s";“获取更改”;方法返回错误的更改顺序

Google drive api 谷歌驱动api';s";“获取更改”;方法返回错误的更改顺序,google-drive-api,Google Drive Api,我正在实现一个简单的应用程序,用于将我的Google drive帐户上的文件与我的本地存储同步,我遇到了更改顺序的问题 假设我有下一个案例: 我在谷歌硬盘上创建文件夹1 我在谷歌硬盘上创建文件夹2 我在谷歌硬盘上创建文件夹3 我将文件夹3从根目录移动到文件夹1中 如果启动了我的应用程序-一切正常。我收到的更改顺序正确-我收到了关于创建文件夹1的更改,然后是关于文件夹2的更改,等等 但是,如果应用程序未启动,并且我执行上述操作,然后启动应用程序,则我会收到错误顺序的更改。准确地说,顺序如下: 35

我正在实现一个简单的应用程序,用于将我的Google drive帐户上的文件与我的本地存储同步,我遇到了更改顺序的问题

假设我有下一个案例:

  • 我在谷歌硬盘上创建文件夹1
  • 我在谷歌硬盘上创建文件夹2
  • 我在谷歌硬盘上创建文件夹3
  • 我将文件夹3从根目录移动到文件夹1中
  • 如果启动了我的应用程序-一切正常。我收到的更改顺序正确-我收到了关于创建文件夹1的更改,然后是关于文件夹2的更改,等等

    但是,如果应用程序未启动,并且我执行上述操作,然后启动应用程序,则我会收到错误顺序的更改。准确地说,顺序如下:

  • 353041变更-文件2-文件修改时间2015年4月4日18:29:45
  • 353045更改-文件3-文件的修改时间2015年4月4日18:29:48(在本例中,文件夹3已具有新的父文件夹-文件夹1)
  • 353046变更-文件1-文件修改时间2015年4月4日18:29:41
  • 这里可以看到,即使文件被修改了,也证明顺序是错误的

    这意味着,当我尝试同步处理所有更改时,我无法处理有关文件夹3的更改,因为此时我的本地存储上不存在文件夹1(文件夹3的父级)

    这很奇怪,因为谷歌的官方文档说

    谷歌驱动api似乎以某种方式合并了变化,但它仍然不是按时间顺序排列的


    也许有人已经解决了这个问题。如果有人能帮助我,我将不胜感激。

    您确定文件1没有更改353040吗?该顺序在技术上是正确的,因为您在更改f3(通过移动)后确实更改了f1。如果你确定f1没有更改353040,那么我最好的建议是检查f3的父母并确认他们与文件夹相对应。是的,我一开始也建议这样做,因为我们似乎错过了f1的更改。然而,我检查了353040号变更,谷歌驱动api回复了404。所有数字的答案相同,直到之前的现有更改。我已经检查了f3的父项是否有更改353045,并且我确定父项是f1,这在本地存储中不存在。所以我不确定这是一个好主意,创建f1没有相应的变化。。。也许值得按修改日期对更改进行排序。。。但这样就很难跟踪已经处理的更改