4

私は使用してCKDiscoverAllContactsOperationいますが、私にとってはうまく機能しません。

-(void)queryForAllUsers: (void (^)(NSArray *records))completionHandler {

    CKDiscoverAllContactsOperation *op = [[CKDiscoverAllContactsOperation alloc] init];

    [op setUsesBackgroundSession:YES];
    op.queuePriority = NSOperationQueuePriorityNormal;

    [op setDiscoverAllContactsCompletionBlock:^(NSArray *userInfos, NSError *error) {

        if (error) {
            NSLog(@"An error occured in %@: %@", NSStringFromSelector(_cmd), error);
            //abort();
        } else {

            NSLog(@"Number of records in userInfos is: %ld", (unsigned long)[userInfos count]);
            dispatch_async(dispatch_get_main_queue(), ^(void){
                completionHandler(userInfos);
            });
        }
    }];
    [self.container addOperation:op];
}

使用しているコンテナはpublicCloudDatabase.

4

2 に答える 2

4

検索は、別のユーザーがアプリをアクティブ化し、発見可能であることが承認され、連絡先に他の人の iCloud メールアドレスがある場合にのみ機能します。

于 2015-02-12T06:35:58.153 に答える