0

Dropbox Sync API 是否允许将目录或文件从 Dropbox 复制到应用沙箱目录中?

我很高兴能够使用 Dropbox Sync API 并使用 Dropbox 来管理我的 OS X 机器和运行我的应用程序的 iPad 之间的媒体资产。

我很快就集成了 Sync API,并且能够打开文件并将它们再次保存到 Dropbox。

因为我的应用程序已经设置了许多动态加载媒体资产的调用,所以尝试从 Dropbox 文件系统打开所有这些资产会增加不必要的复杂性。我的目的是使用 Sync API 来确定是否有更新的资产,然后将它们复制到我的应用程序目录之一。

但似乎使用 Sync API 返回的几乎所有对象都是 DBObjects,我无法执行正常的 NSFilesystem 文件操作,例如复制。DBObjects 本身似乎也没有复制功能。

有没有办法在不求助于 CorecAPI 的情况下做到这一点?

例如,对于名为 story 的任意文件类型

//get a list of stories and put them in an array
    DBPath *storyPathDB = [[DBPath root] childPath:@"/storyBundlesDB"];
    NSArray *listOfStoriesDB = [[DBFilesystem sharedFilesystem] listFolder:storyPathDB error:nil];
    for (DBFileInfo *story in listOfStoriesDB)
    {
        //now I can list out the path of my stories, but that's about it...
        DBPath *storyPath = story.path;
        NSLog(@"%@",storyPath.stringValue);
        //How can I treat these stories whether they are directories or .mov, .png, and copy them to my app directory? 
    }

我在这里看到了这个问题Data syncing with DropBox API and iOS人们建议为此目的使用 SyncAPI,但似乎该线程上没有人真正尝试过它。

4

1 回答 1

0

readData如果您不能直接使用 DBFile 对象,您可以使用读取文件的内容,然后将其写入另一个位置。

请注意,如果您想在文件(在 Dropbox 中)更改时收到通知,您需要保持该文件处于打开状态。从本质上讲,文件只有在您保持打开文件、收到有可用更新内容的通知时才会更新,然后调用update.

于 2013-08-28T18:03:45.793 回答