При использовании универсальной ссылки iOS, как определить вызывающее приложение? - PullRequest
0 голосов
/ 21 мая 2019

У меня есть два приложения A и B, и я использую универсальную ссылку iOS, чтобы открыть приложение B из приложения A.

Я успешно настроил приложение B, чтобы его можно было открыть с помощью универсальных ссылок, и

Вот как я могу открыть приложение B внутри приложения A :

    NSDictionary *options = @{UIApplicationOpenURLOptionUniversalLinksOnly : @YES};
    NSString *stringURL = @"my_url";
    NSURL *url = [NSURL URLWithString:stringURL];
    if ([[UIApplication sharedApplication] canOpenURL:url]){
        [[UIApplication sharedApplication] openURL:url options:options completionHandler:nil];
    }else{
         //handle error
    }

Приложение B открывается, и этот метод вызывается в AppDelegate:

- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler{
    return YES;
}

Но похоже, что он не предоставляет никакой информации о вызывающем приложении (приложение A).Было бы здорово, если бы я мог получить идентификатор пакета или имя вызывающего приложения, чтобы я мог правильно идентифицировать вызывающее приложение.

Можно ли как-то идентифицировать вызывающее приложение?

...