Я интегрировал фреймворк CallKit в свое приложение и сделал исходящий вызов.
Я вижу исходящий вызов в родных телефонах.
Но когда я ввожу исходящий вызов и хочу получить информацию о телефоне. Оно сломалось.
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSUserActivity interaction]: unrecognized selector sent to instance 0x17d4ab90'
Вот мой код в AppDelegate.m
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void(^)(NSArray * __nullable restorableObjects))restorationHandler NS_AVAILABLE_IOS(8_0)
{
INInteraction *interaction = userActivity.interaction;
INStartAudioCallIntent *startAudioCallIntent = (INStartAudioCallIntent *)interaction.intent;
INPerson *contact = startAudioCallIntent.contacts[0];
INPersonHandle *personHandle = contact.personHandle;
NSString *phoneNumber = personHandle.value;
}
Я разбился в INInteraction *interaction = userActivity.interaction;
И я проверил с информацией о взаимодействии
@property (readonly, nullable, NS_NONATOMIC_IOSONLY) INInteraction *interaction API_AVAILABLE(macosx(10.12), ios(10.0));
Ниже приведена моя среда
mac: 10.12.1
xcode: 8.1
iOS: 10.1.1
Это не нарушает требования
Я ищу весь день, но, кажется, никто не встречает эту проблему.
Что-то не так с уровнем кода или есть другой способ получить информацию о телефоне?