我使用这段代码试图获取用户的iCloud信息:
CKContainer.default().requestApplicationPermission(.userDiscoverability) { (status, error) in
self.container.fetchUserRecordID { (recordIDFetched, error) in
if error == nil {
if let temp = recordIDFetched {
let temp2 = CKUserIdentityLookupInfo(userRecordID: temp)
let fetchedID = CKDiscoverUserIdentitiesOperation(userIdentityLookupInfos: [temp2])
print("\nIDCount")
print(fetchedID.userIdentityLookupInfos.count)
print("\nIDInfo")
print(fetchedID.userIdentityLookupInfos[0].userRecordID ?? "Default RecordID")
print("\nIDEmail")
print(fetchedID.userIdentityLookupInfos[0].emailAddress ?? "Default Email")
print("\nIDPhone")
print(fetchedID.userIdentityLookupInfos[0].phoneNumber ?? "Default Phone")
}
} else {
print("Error")
print(error ?? "Default Error")
}
}
}
但是,当我运行它时,它会返回:
IDCount 1 IDInfo zoneID=_defaultZone:defaultOwner CKRecordID: 0x6080002303a0;recordName=_06a68abd6423ca06532871a8803f31ee IDEmail 默认电子邮件 IDPhone 默认电话
我做错了什么?我知道用户登录到iCloud中,因为它正在从服务器获取一些数据,好的--这一点就失败了。
https://stackoverflow.com/questions/42509722
复制相似问题