Requisito: Sto salvando alcuni contatti nell'iPhone dell'utente insieme a un'immagine (dimensioni uguali a quelle del dispositivo). Voglio che questa immagine venga visualizzata su FULLSCREEN ogni volta che il contatto chiama su quel dispositivo.Salvataggio di un'immagine come immagine del contatto e visualizzazione durante la chiamata in entrata
Notato Esempio:Truecaller iOS applicazione mostra come immagine di rosso quando il chiamante è identificati come spam
Codice: Questo è il codice che ho usato per salvare i dati dei contatti. Sto usando 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);
}
Scenario attuale: sto ottenendo questa immagine in iOS Contacts App
ma non è visualizzato quando l'utente richiama su iPhone. Come funziona Truecaller? Cosa mi manca qui?
Uno di mia app ho fatto lo stesso in rapida: lasciare che il contatto = CNMutableContact() immagine let: UIImage = UIImage (imageLiteral: "cat.png") se lasciare imageData: NSData = UIImagePNGRepresentation (immagine) { contatto .imageData = imageData // L'immagine del profilo come oggetto NSData } –
@SaRaVaNaNDM: Ho fatto la stessa cosa in ObjC. Stavi ottenendo il risultato desiderato (immagine del chiamante a schermo intero)? – Nishant
Sì, sto ricevendo. Immagino il suo problema con iOS, a volte non mostrerà l'immagine. –