21

我正在使用新的 Google play service drive api 在我的 android 应用程序中使用 App 文件夹实现备份和恢复数据。我遵循了 google drive developer guides 中的说明。当我只使用一台设备时,我可以成功备份和恢复数据并且不要卸载并重新安装应用程序。但是当我使用两台设备或卸载并重新安装应用程序时会出现问题。

场景1:我在一台设备上安装我的应用程序并成功将数据备份到“应用程序文件夹”,我可以在谷歌驱动器“管理应用程序”中看到我的应用程序文件夹的数据大小发生了变化,然后我在另一台设备上安装我的应用程序并尝试使用“从谷歌驱动器恢复”来恢复我刚刚在第一台设备上备份的数据。但是谷歌驱动器 api 返回了空的 MetadataBuffer。

场景2:我在一台设备上安装我的应用程序并成功备份数据到“应用程序文件夹”,我还看到“管理应用程序”中我的应用程序文件夹的数据大小发生了变化。然后我卸载我的应用程序并重新安装它并尝试恢复我备份的数据。同样的事情发生了。在我的应用程序文件夹中找不到文件。

我用 queryChildren 和 listChildren 尝试了 api,但没有幸运。

Drive.DriveApi.getAppFolder(getGoogleApiClient())
    .queryChildren(getGoogleApiClient(), query)

Drive.DriveApi.getAppFolder(mGoogleApiClient).listChildren(mGoogleApiClient)

谷歌驱动团队的任何人都可以解决这个问题吗?我认为这是一个非常大的错误。我们仍然没有解决方法。

4

1 回答 1

4

我们发现了 API 的一个问题,这意味着在卸载应用程序然后重新安装后未下载应用程序文件夹内容。这将在下一版本的 Google Play 服务中得到修复。

出于开发目的,您可以通过清除 Google Play 服务数据(设置 > 应用程序 > Google Play 服务 > 管理空间 > 清除所有数据)在当前的 Google Play 服务(版本 6.1)中解决此问题。我们不建议向最终用户推荐此解决方案,因为这可能会清除其他应用程序依赖的数据。

问候,
丹尼尔

于 2014-10-24T05:09:14.033 回答