Updated CloudKitTodo - updated from deprecated CloudKit API's
This commit is contained in:
parent
25f0966d2f
commit
15f8dfb048
@ -369,8 +369,12 @@ static NSString *const Key_ServerChangeToken = @"serverChangeToken";
|
||||
CKRecordZoneID *recordZoneID =
|
||||
[[CKRecordZoneID alloc] initWithZoneName:CloudKitZoneName ownerName:CKCurrentUserDefaultName];
|
||||
|
||||
CKSubscription *subscription =
|
||||
[[CKSubscription alloc] initWithZoneID:recordZoneID subscriptionID:CloudKitZoneName options:0];
|
||||
CKNotificationInfo *notificationInfo = [CKNotificationInfo new];
|
||||
notificationInfo.shouldSendContentAvailable = YES;
|
||||
|
||||
CKRecordZoneSubscription *subscription =
|
||||
[[CKRecordZoneSubscription alloc] initWithZoneID:recordZoneID subscriptionID:CloudKitZoneName];
|
||||
subscription.notificationInfo = notificationInfo;
|
||||
|
||||
CKModifySubscriptionsOperation *modifySubscriptionsOperation =
|
||||
[[CKModifySubscriptionsOperation alloc] initWithSubscriptionsToSave:@[ subscription ]
|
||||
@ -483,14 +487,18 @@ static NSString *const Key_ServerChangeToken = @"serverChangeToken";
|
||||
CKRecordZoneID *recordZoneID =
|
||||
[[CKRecordZoneID alloc] initWithZoneName:CloudKitZoneName ownerName:CKCurrentUserDefaultName];
|
||||
|
||||
CKFetchRecordChangesOperation *operation =
|
||||
[[CKFetchRecordChangesOperation alloc] initWithRecordZoneID:recordZoneID
|
||||
previousServerChangeToken:prevServerChangeToken];
|
||||
CKFetchRecordZoneChangesOptions *zoneOptions = [CKFetchRecordZoneChangesOptions new];
|
||||
zoneOptions.previousServerChangeToken = prevServerChangeToken;
|
||||
|
||||
CKFetchRecordZoneChangesOperation *operation =
|
||||
[[CKFetchRecordZoneChangesOperation alloc] initWithRecordZoneIDs:@[recordZoneID]
|
||||
optionsByRecordZoneID:@{recordZoneID: zoneOptions}];
|
||||
operation.fetchAllChanges = NO;
|
||||
|
||||
__block NSMutableArray *deletedRecordIDs = nil;
|
||||
__block NSMutableArray *changedRecords = nil;
|
||||
|
||||
operation.recordWithIDWasDeletedBlock = ^(CKRecordID *recordID){
|
||||
operation.recordWithIDWasDeletedBlock = ^(CKRecordID *recordID, NSString *recordType){
|
||||
|
||||
if (deletedRecordIDs == nil)
|
||||
deletedRecordIDs = [[NSMutableArray alloc] init];
|
||||
@ -506,14 +514,14 @@ static NSString *const Key_ServerChangeToken = @"serverChangeToken";
|
||||
[changedRecords addObject:record];
|
||||
};
|
||||
|
||||
__weak CKFetchRecordChangesOperation *weakOperation = operation;
|
||||
operation.fetchRecordChangesCompletionBlock =
|
||||
^(CKServerChangeToken *newServerChangeToken, NSData *clientChangeTokenData, NSError *operationError){
|
||||
operation.recordZoneFetchCompletionBlock =
|
||||
^(CKRecordZoneID *recordZoneID, CKServerChangeToken *newServerChangeToken,
|
||||
NSData *clientChangeTokenData, BOOL moreComing, NSError *operationError)
|
||||
{
|
||||
DDLogVerbose(@"CKFetchRecordZoneChangesOperation.recordZoneFetchCompletionBlock");
|
||||
|
||||
DDLogVerbose(@"CKFetchRecordChangesOperation.fetchRecordChangesCompletionBlock");
|
||||
|
||||
DDLogVerbose(@"CKFetchRecordChangesOperation: serverChangeToken: %@", newServerChangeToken);
|
||||
DDLogVerbose(@"CKFetchRecordChangesOperation: clientChangeTokenData: %@", clientChangeTokenData);
|
||||
DDLogVerbose(@"CKFetchRecordZoneChangesOperation: serverChangeToken: %@", newServerChangeToken);
|
||||
DDLogVerbose(@"CKFetchRecordZoneChangesOperation: clientChangeTokenData: %@", clientChangeTokenData);
|
||||
|
||||
// Edge Case:
|
||||
//
|
||||
@ -530,8 +538,6 @@ static NSString *const Key_ServerChangeToken = @"serverChangeToken";
|
||||
// And, in fact, if we don't follow that up with another fetch,
|
||||
// then we fail to properly fetch what's on the server.
|
||||
|
||||
BOOL moreComing = weakOperation.moreComing;
|
||||
|
||||
BOOL hasChanges = NO;
|
||||
if (!operationError)
|
||||
{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user