2016-07-05 4 views
8

요구 사항 : 일부 연락처는 사진과 함께 사용자의 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); 
} 

현재 대본을 사용하고 있습니다 : 나는 아이폰 OS Contacts App이 이미지를 얻고 있지만 사용자가 아이폰에 호출 할 때 그가 표시되지 않습니다. Truecaller는 어떻게합니까? 내가 여기서 무엇을 놓치고 있니?

+0

하나는 내가 빠른에서 동일했다 .imageData = imageData // NSData 객체 인 프로필 그림 } –

+0

@SaRaVaNaNDM : ObjC에서 동일한 작업을 수행했습니다. 원하는 결과를 얻었습니까 (전체 화면 호출자 이미지)? – Nishant

+0

그래, 내가 간다. 나는 그것의 IOS 문제를 추측한다, 때때로 그것은 이미지를 보여주지 않을 것이다. –

답변

0

이미지가 주소록 앱에 표시되면 해당 사용자가 전화를받을 때 표시됩니다. 있는 UIImage =있는 UIImage (imageLiteral : "cat.png") 경우하자 imageData의 :있는 NSData = UIImagePNGRepresentation (이미지) { 접촉 접촉 = CNMutableContact() 하자 이미지를 보자 내 응용 프로그램의

+0

그것은 일어나야 만하지만 그렇지 않습니다. 전화가 오면 연락처 이름 이니셜 만 표시됩니다. 이 간단한 일로 어디서 잘못 될지 잘 모르겠습니다. 작동중인 일부 코드가 있습니까? – Nishant

+0

다른 웹 사이트 : "사진을 선택한 위치에 따라 달라집니다. 카메라 롤에서 선택한 사진 만 전체 화면으로 표시됩니다." 따라서 코드에서 뭔가를 변경해야 작동 할 수 있습니다. –

+0

전에 이것에 대해 읽었습니다.이 문제를 해결하려고합니다. 그렇다면 Truecaller 앱은 어떻게합니까? – Nishant