Ios DBSyncStatus的Dropbox API用法处于活动状态
我正在学习iOS的核心数据,我发现Dropbox API在这本书出版不到一年前就已经更新了 书中有这样一种方法:Ios DBSyncStatus的Dropbox API用法处于活动状态,ios,dropbox,dropbox-api,Ios,Dropbox,Dropbox Api,我正在学习iOS的核心数据,我发现Dropbox API在这本书出版不到一年前就已经更新了 书中有这样一种方法: - (void)refreshStatus { DBAccount *account = [[DBAccountManager sharedManager] linkedAccount]; if (!account.isLinked) { self.navigationItem.title = @"Unlinked"; } else if ([
- (void)refreshStatus
{
DBAccount *account = [[DBAccountManager sharedManager] linkedAccount];
if (!account.isLinked) {
self.navigationItem.title = @"Unlinked";
} else if ([[DBFilesystem sharedFilesystem] status] > DBSyncStatusActive) {
self.navigationItem.title = @"Syncing";
} else {
self.navigationItem.title = @"Backups";
}
}
我查看了当前Dropbox框架的标题,没有“DBSyncStatusActive”,但是有一个名为“DBSyncStatus”的标题,其中有一个BOOL用于DBSyncStatus的活动属性。我要输入什么才能得到返回DBSyncStatus的BOOL呢
这里有一个指向文档的链接,但我不清楚我需要做什么才能返回BOOL:
最近推出的新3.0.x版本的同步/数据存储API改变了这一点 你所拥有的东西很难翻译,因为很难说出你在寻找什么 新状态可以告诉您是否正在进行任何上载或下载,或者是否正在同步任何元数据 如果你真正关心的是发生了什么事情,那么你可以:
} else if ([DBFilesystem sharedFilesystem].status.anyInProgress) {
如果文件系统正在进行任何元数据同步、任何上载或任何下载,则会出现这种情况
@property (nonatomic, readonly) BOOL active;
应该是你的替代品,特别是关于同步状态活动。我已经试过了,效果很好
- (void)refreshStatus {
DBAccount *account = [[DBAccountManager sharedManager] linkedAccount];
if (!account.isLinked) {
self.navigationItem.title = @"Unlinked";
} else if ([[DBFilesystem sharedFilesystem] status].active) {
self.navigationItem.title = @"Syncing";
}
else {
self.navigationItem.title = @"Backups";
}
}
原因如下:
@接口DBSyncStatus:NSObject
/**后台同步正在积极处理或等待
变化。首次创建时,同步处于活动状态,直到
它完成了第一次文件信息同步。在该点之后,它处于活动状态
无论何时下载或上载有更改,或有任何文件
打开或注册路径观察员*/
@属性(非原子,只读)BOOL-active 谢谢大家!!根据我在文档中读到的内容,我想朝这个方向走,但我不确定。今年早些时候我刚开始学习iOS/ObjC,所以我有点犹豫不决。这样就消除了编译器错误,并且它可以正常工作;)