要求:我将一些联系人与图片一起保存到用户的 iPhone 中(尺寸与设备相同)。每当联系人在该设备上呼叫时,我希望这张图片显示在全屏上。
注意示例:当呼叫者被 识别为垃圾邮件时, Truecaller iOS 应用程序显示为红色图像
代码:这是我用来保存联系人数据的代码。我在用Contacts.framework
CNMutableContact *newContact = [CNMutableContact new];
newContact.imageData = UIImagePNGRepresentation([UIImage imageNamed:@"blue_bg.png"]);
newContact.contactType = CNContactTypePerson;
newContact.givenName = user.firstName;
newContact.middleName = user.middleName;
newContact.familyName = user.lastName;
NSArray *numbers = [[NSArray alloc] initWithArray:@[[CNLabeledValue labeledValueWithLabel:@"Main" value:[CNPhoneNumber phoneNumberWithStringValue:user.mobileNumber.stringValue]]]];
newContact.phoneNumbers = numbers;
CNContactStore *store = [CNContactStore new];
CNSaveRequest *saveReq = [CNSaveRequest new];
[saveReq addContact:newContact toContainerWithIdentifier:nil];
NSError *error = nil;
[store executeSaveRequest:saveReq error:&error];
if (error) {
NSLog(@"Contact Save ERROR: %@", error.localizedDescription);
}
当前场景:我在 iOS 中获取此图像,Contacts App
但当该用户在 iPhone 上调用时未显示。Truecaller 是如何做到的?我在这里想念什么?