deepLinkHandler 与 continueUserActivity

deepLinkHandler vs continueUserActivity

出于架构原因,我不希望在 appdelegate 中使用深层链接处理程序在进入时重定向应用程序。

假设我现在不关心初始安装深层链接,我可以这样做吗?

- (BOOL)application:(UIApplication *)application
continueUserActivity:(NSUserActivity *)userActivity
 restorationHandler:(void (^)(NSArray *))restorationHandler {
    BOOL handledByBranch = [[Branch getInstance] continueUserActivity:userActivity];
    if (handledByBranch) {
       // REDIRECT APP TO WHERE I NEED
    }
    return handledByBranch;
}

来自 Branch 的 Alex:这在理论上可能可行,但它可能不是最好的方法,并且会遗漏一些边缘情况。尽管 Branch 尽可能使用通用链接(continueUserActivity 方法),但在某些情况下,您的应用程序仍会通过 URI 方案(openURL 方法)启动。您将需要分别处理这两者,并且可能 运行 进入某些具有不良副作用的情况。

您可能会发现我们关于 how to build a custom deep link router 的说明很有用。