Глубокие ссылки не работают, когда приложение находится в фоновом режиме? - PullRequest
0 голосов
/ 15 ноября 2018

Я использую следующий метод для реализации глубоких ссылок.

 - (BOOL)application:(UIApplication *)application
        openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication
     annotation:(id)annotation

Когда приложение работает в фоновом режиме, этот метод не вызывается, когда я пришел из браузера ?.
Я добавил все необходимые процедуры для реализации глубоких ссылок.
Как решить эту проблему?

Ответы [ 2 ]

0 голосов
/ 16 ноября 2018
#define App_Scheme   @"yourbundleappschme"

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication annotation:(id)annotation 
{
    if ([[url scheme] isEqualToString:App_Scheme])
    {
        NSLog(@"Calling Application Bundle ID: %@", sourceApplication);
        NSLog(@"URL scheme:%@", [url scheme]);
        NSLog(@"URL query: %@", [url query]);
        return YES;
    }    
    return NO;
}

Также добавить в делегат

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options {
//handle here
    if ([[url scheme] isEqualToString:App_Scheme])
    {
        NSLog(@"URL scheme:%@", [url scheme]);
        NSLog(@"URL query: %@", [url query]);
       return YES;
    }
     return FALSE;
}

Также добавьте Проект -> Цель -> Возможности -> Связанные домены -> Добавьте свой домен с помощью

Ссылки на приложения : домен здесь

0 голосов
/ 15 ноября 2018

попробуйте это.

 func application(_ application: UIApplication, continue userActivity: NSUserActivity,
                 restorationHandler: @escaping ([Any]?) -> Void) -> Bool {
    guard let dynamicLinks = FIRDynamicLinks.dynamicLinks() else {

        return false
    }

    let handled = dynamicLinks.handleUniversalLink(userActivity.webpageURL!) { (dynamiclink, error) in
        print(error as Any)
    }


    return handled
}
...