【问题标题】:Efficient syncing of app data to the App folder in Google Drive将应用数据高效同步到 Google Drive 中的 App 文件夹
【发布时间】:2015-11-21 21:22:19
【问题描述】:

我正在开发一个为用户存储项目的应用,并且用户可以选择与 Google 云端硬盘同步。每个项目由文本和图像组成。

我目前的方法是将每个项目的 .json 和 .jpg 文件在内部保存到设备,然后一旦从 Drive API 调用 onConnected,将这些文件上传到用户在 Google Drive 中的 APP 文件夹。与删除类似,我会创建一个名为“foo”的项目已被删除的标志,然后尝试查看驱动器中是否存在文件“foo.jpg”和“foo.json”,并相应地删除。

这对我现在有效,但由于 googleApiClient 错误,我经常让应用程序崩溃,我意识到这不是一种有效的方法。所以我想知道你们中是否有人知道更有效的方法来做到这一点?

在理想的世界中,我希望拥有这样的东西:我将每个项目的文件保存到内部设备中,一个库会跟踪这些文件并相应地同步云端硬盘。

感谢您的建议!

【问题讨论】:

    标签: android google-drive-api synchronization google-drive-android-api


    【解决方案1】:

    基于您指的是“onConnected”和“googleApiClient”这一事实,我假设您使用的是GDAA 而不是REST Api

    在处理 GooDrive 时,您应该重新考虑使用文件名的想法。它们在 GooDrive 中并不是唯一的,GDAA 的延迟迟早会导致存在多个同名文件的问题,这些文件是由无处不在的构造创建的:

      if file.name not exist
        create file.name
    

    您使用 APP 文件夹这一事实使调试更加困难,因为您没有通过查看 http://drive.google.com 获得反馈。

    您应该通过 DriveId(如果仅使用单个 Android 设备)或通过 ResourceId(如果您打算将 ID 发送/广播到不同的设备/应用)来引用您的文件。如果您决定使用 ResourceId,请确保您处理由驱动器对象的delayed GDAA's promotion 引起的延迟问题。

    这当然不能完全涵盖您的问题,但它的范围太广,无论如何都无法正确回答。

    祝你好运

    【讨论】:

      猜你喜欢
      • 2020-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-01
      • 1970-01-01
      • 2022-08-20
      相关资源
      最近更新 更多