要求:我将一些联系人与图片一起保存到用户的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联系人应用程序中获取此图像,但当用户在iPhone上调用时不显示该图像. Truecaller是如何做到的?我在这里错过了什么?
解决方法
如果图像显示在“联系人”应用程序中,则应该在您被该人呼叫时显示该图像.