要求:我正在将一些联系人与图片一起保存到用户的iPhone中(尺寸与设备相同)。我希望每当联系人呼叫该设备时,都会在FULLSCREEN上显示此图片。
注意到示例: 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是如何做到的?我在这里错过了什么?
答案 0 :(得分:0)
如果图片显示在“通讯录”应用中,则该图片会在您被该人调用时显示。