2017-01-09 1 views
1

Я использую CallKit в приложении VOIP. Все работает отлично, за исключением последнего списка звонков после размещения исходящего вызова, отображается только номер, даже если номер сохранен в телефонной книге. например, в телефонной книге есть контакт с именем «Джон». теперь, если исходящий вызов помещен из приложения, в последнем журнале он показывает только номер. это то, что я сделал.CallKit - Журнал вызовов в последних вызовах не отображает имя для исходящего вызова

NSUUID *callUUID = [NSUUID UUID]; 
CXHandle *handle = [[CXHandle alloc] initWithType:CXHandleTypePhoneNumber value:number]; 
CXStartCallAction *action = [[CXStartCallAction alloc] initWithCallUUID:callUUID handle:handle]; 
action.contactIdentifier = identifier; //identifier of that contact 
[self.callController requestTransaction:[CXTransaction transactionWithActions:@[action]] completion:completion]; 

ответ

2

Проблема заключается в том, что вы не говорите провайдеру имя, когда начать исходящий вызов, вы можете решить, что добавление в performStartCallAction следующий код:

CXCallUpdate *update = [[CXCallUpdate alloc] init]; 
[update setRemoteHandle:[[CXHandle alloc] initWithType:CXHandleTypePhoneNumber value:number]]; 
[update setLocalizedCallerName:name]; 

[provider reportCallWithUUID:uuid updated:update]; 

С помощью этого кода I решил ту же проблему, и теперь он показывает имя.

Смежные вопросы