Ios 解析未更新的固定对象
我有以下代码来更新服务器上已更改的对象:Ios 解析未更新的固定对象,ios,parse-platform,Ios,Parse Platform,我有以下代码来更新服务器上已更改的对象: NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [PFCloud callFunctionInBackground:@"getAllData" withParameters:@{@"LastUpdate": [self getLastSyncDate], @"Scan": @"NO"} block:^(NSArray *result, NSError *error){
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[PFCloud callFunctionInBackground:@"getAllData" withParameters:@{@"LastUpdate": [self getLastSyncDate], @"Scan": @"NO"} block:^(NSArray *result, NSError *error){
if (!error) {
for (int x = 0; x < result.count; x++) {
PFObject *object = [result objectAtIndex:x];
[object unpinInBackgroundWithName:object.parseClassName block:^(BOOL succeeded, NSError *error){
if (!error) {
if ([object[@"deleted"] boolValue] != YES) {
[object pinInBackgroundWithName:object.parseClassName block:^(BOOL succeeded, NSError *error){
if (x == result.count - 1) {
[self performSelector:@selector(reloadTableView) withObject:nil afterDelay:0.3];
}
}];
}
}
}];
}
[defaults setObject:[NSDate date] forKey:@"LastSynced"];
[defaults synchronize];
}
[self reloadTableView];
}];
NSUserDefaults*默认值=[NSUserDefaults standardUserDefaults];
[PFCloud callFunctionInBackground:@“getAllData”,参数:@{@“LastUpdate”:[self getLastSyncDate],@“Scan”:@“NO”}块:^(NSArray*结果,NSError*错误){
如果(!错误){
对于(int x=0;x
但是我的对象没有更新。从本地数据存储调用PFQuery会显示旧版本
有什么想法吗?看起来您有一堆相互嵌套的后台函数,这导致了一个赛车错误 以下是代码的操作顺序:
//Declare these two globally
int total;
int complete;
complete = 0;
*defaults = [NSUserDefaults standardUserDefaults];
[PFCloud callFunctionInBackground:@"getAllData" withParameters:@{@"LastUpdate": [self getLastSyncDate], @"Scan": @"NO"} block:^(NSArray *result, NSError *error){
if (!error) {
total = result.count;
for (int x = 0; x < result.count; x++) {
PFObject *object = [result objectAtIndex:x];
[object unpinInBackgroundWithName:object.parseClassName block:^(BOOL succeeded, NSError *error){
if (!error) {
if ([object[@"deleted"] boolValue] != YES) {
[object pinInBackgroundWithName:object.parseClassName block:^(BOOL succeeded, NSError *error){
self.total++;
[self updateCompleteCheck];
}];
}
}
}];
}
}
}];
-(void)updateCompleteCheck
{
if(total == complete) {
//Only when this is done do you know, for certain, the update is really complete
[defaults setObject:[NSDate date] forKey:@"LastSynced"];
[defaults synchronize];
[self reloadTableView];
}
}
//全局声明这两个
整数合计;
int完成;
完成=0;
*默认值=[NSUserDefaults standardUserDefaults];
[PFCloud callFunctionInBackground:@“getAllData”,参数:@{@“LastUpdate”:[self getLastSyncDate],@“Scan”:@“NO”}块:^(NSArray*结果,NSError*错误){
如果(!错误){
total=result.count;
对于(int x=0;x