Я попытался установить и получить NSUserActivity приведенный ниже код, но у меня это не работает. Я не могу получить данные о сверхактивности Я тестирую приведенный ниже код на устройстве с iOS версии 10 и выше. Установите NSUserActivity в callkit:
NSUserActivity *activity = [[NSUserActivity alloc] initWithActivityType:@"INStartAudioCallIntent"];
activity.title = @"title";
activity.delegate = self;
activity.needsSave = YES;
activity.webpageURL = [NSURL URLWithString:@"https://www.google.com"];
activity.userInfo = @{@"name": @"test", @"deep_link": @"test"};
// set requiredUserInfoKeys if you're also setting webPageURL !!
// otherwise, userInfo will be nil !!
activity.requiredUserInfoKeys = [NSSet setWithArray:@[@"name", @"deep_link"]];
activity.eligibleForSearch = YES;
activity.eligibleForPublicIndexing = YES;
[activity becomeCurrent];
- (void)userActivityWillSave:(NSUserActivity *)userActivity {
userActivity.userInfo = @{@"name": @"test", @"deep_link": @"test"};
NSLog(@"userActivityWillSave");
}
- (void)updateUserActivityState:(NSUserActivity *)userActivity {
NSLog(@"updateUserActivityState");
[userActivity addUserInfoEntriesFromDictionary:@{@"name": @"test", @"deep_link": @"test"}];
}
в info.plist: NSUserActivityTypes как INStartAudioCallIntent INStartAudioCallIntent
в Appdelegate.m:
- (BOOL)application:(UIApplication *)application
continueUserActivity:(NSUserActivity *)userActivity
restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> *restorableObjects))restorationHandler{
NSLog(@" Userinfo Data==>%@ useractivityTitle ==>%@ activityType-->%@ webpage-->%@",userActivity.userInfo , userActivity.title,userActivity.activityType,userActivity.webpageURL );
return YES;
}
Примечание: я проверил код для Speakerbox.
@ViktorGardart Да, нам не нужно устанавливать nsuseractivity для startAudioCallIntent. Мне просто нужно убедиться, что update.remoteHandle = [[CXHandle alloc] initWithType: CXHandleTypeGeneric value: ContactID]; и providerConfiguration.supportedHandleTypes = [NSSet setWithObjects: [NSNumber numberWithInteger: CXHandleTypeGeneric], [NSNumber numberWithInteger: CXHandleTypePhoneNumber], nil]; в моем callkit, и он отлично работает





Вы в этом разобрались?