Dropbox同步API iOS复制文件到应用程序文档



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

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

我很快就集成了Sync API,可以打开文件并将其再次保存到Dropbox中。

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

但是,使用Sync API返回的几乎所有对象都是DBObjects,并且我无法执行正常的NSFilesystem文件操作,如复制。此外,DBObjects本身似乎没有复制函数。

有没有什么方法可以做到这一点而不诉诸于核心API?

例如,对于称为故事的任意文件类型

//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? 
    }

我在这里看到了这个问题与DropBox API和iOS的数据同步,人们建议使用SyncAPI来达到这个目的,但似乎没有人真正尝试过。

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

请注意,如果你想在文件(Dropbox中)更改时获得通知,你需要打开该文件。本质上,只有当您打开文件,收到有更新内容可用的通知,然后调用update时,文件才会更新。

最新更新