【问题标题】:how can i keep a folder in my mobile storage and a folder in my dropbox space in Sync?如何在 Sync 中将一个文件夹保存在我的移动存储中,并将一个文件夹保存在我的 Dropbox 空间中?
【发布时间】:2015-03-18 03:51:00
【问题描述】:

我为农民开发了一个安卓应用程序。这是印度农民的信息应用程序。用户将通过我的应用程序将图像和视频文件发送给我。在这里,我使用(集成)保管箱将这些文件直接接收到我的保管箱空间。无论用户拍摄的图像或视频是什么,它都会存储在我的移动存储中的一个文件夹中。我想要的是,我希望我的移动存储中的文件夹与我的保管箱中的文件夹同步。 我该怎么做?

市场上有一个名为Foldersync 的应用程序完全符合我的要求。他们是怎么做的?如何让移动存储中的文件夹和保管箱中的文件夹保持同步?

注意:

我已经使用了 dropbox api 并创建了一个简单的应用程序来将文件直接发送到我的 Dropbox 空间,并且我知道如何从 dropbox 下载整个文件夹。

但这里我的问题是独一无二的......请不要回答我已经知道的上述几点......

请帮忙! 谢谢你

【问题讨论】:

    标签: android synchronization dropbox-api


    【解决方案1】:

    您可以使用 Dropbox API 使本地客户端与 Dropbox 保持同步。这有两个主要部分:

    1) 元数据:

    假设您使用的是 Core API,获取有关帐户中(或可选地在特定路径下)中所有文件和文件夹的信息的最佳方法是使用 /delta:

    https://www.dropbox.com/developers/core/docs#delta

    这样,您可以获取有关您的应用可以看到的所有内容的信息,然后轻松了解最新的变化。这里有一些关于使用 /delta 的有用博客文章:

    https://blogs.dropbox.com/developers/2013/12/efficiently-enumerating-dropbox-with-delta/ https://blogs.dropbox.com/developers/2013/12/filtering-dropbox-delta-results-by-path/

    2) 文件内容:

    使用从 #1 检索到的元数据,您可以使用 /files (GET) 下载您需要在本地访问的任何文件:

    https://www.dropbox.com/developers/core/docs#files-GET

    您可以使用 /files_put 上传本地更改的文件:

    https://www.dropbox.com/developers/core/docs#files_put

    或者,对于较大的文件,使用分块上传:

    https://www.dropbox.com/developers/core/docs#chunked-upload https://www.dropbox.com/developers/core/docs#commit-chunked-upload

    这里的主要工作将涉及对应用程序中的逻辑进行编程,以正确接收来自服务器的更改以及上传本地更改,以使所有内容保持同步。

    另外,请注意,在移动设备上,带宽可能有限和/或昂贵,因此请注意不要意外自动下载大量用户不需要或不需要的数据。

    【讨论】:

    • 嗨,格雷格,我可以为两个文件夹之间的同步提供任何工作示例代码吗?这对我很有帮助...谢谢
    • 很遗憾,我认为 Dropbox 没有专门针对此用例的示例代码。
    • 没关系@Greg。感谢您的回复:)
    猜你喜欢
    • 2021-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-14
    • 2014-02-18
    相关资源
    最近更新 更多