我试图从他们的iCloud帐户中提取用户的个人资料照片。我正在使用CloudKit并且正在验证用户是否拥有iCloud帐户以及请求可发现权限。我不确定这是可能的,但如果是,我想知道如何。以下是相关代码:
验证iCloud帐户:
[[CKContainer defaultContainer] accountStatusWithCompletionHandler:^(CKAccountStatus accountStatus, NSError *error) {
if (accountStatus == CKAccountStatusAvailable)
{
self.shouldLogin = YES;
}
else
{
self.shouldLogin = NO;
}
}];
从他们的iCloud帐户中提取他们的个人资料图片:
[[CKContainer defaultContainer] requestApplicationPermission:CKApplicationPermissionUserDiscoverability completionHandler:^(CKApplicationPermissionStatus applicationPermissionStatus, NSError * _Nullable error) {
if (applicationPermissionStatus == CKApplicationPermissionStatusGranted)
{
[[CKContainer defaultContainer] discoverUserInfoWithUserRecordID:self.dataStore.user.userID completionHandler:^(CKDiscoveredUserInfo * _Nullable userInfo, NSError * _Nullable error) {
NSData *imageData = userInfo.displayContact.imageData;
UIImage *profileImage = [UIImage imageWithData:imageData];
self.profileImageView.image = profileImage;
}];
}
}];
答案 0 :(得分:0)
您不能获得超过唯一ID以及iCloud用户的名字和姓氏。如果您想了解更多信息,那么您必须向所有用户询问该数据。