ios - 打开 iOS 应用程序后,未调用 "continue userActivity:"方法 - Firebase 动态链接

标签 ios swift appdelegate firebase-dynamic-links

我已经成功集成了 Firebase 动态链接,当我点击动态链接时,我的应用程序就会打开。

我面临的问题是从动态链接打开应用程序后,应该调用 continue userActivity: 方法,但没有任何反应。

我检查了所有可能的东西,但没有发现问题。

我已经在 SO 中搜索了这个,但没有一个答案对我有帮助。

我的代码:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

  GIDSignIn.sharedInstance().clientID = kGoogleSignInClientId
  FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)

 // DynamicLinks.performDiagnostics(completion: nil)

  FirebaseApp.configure()

  return true
}

func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool {

  if url.absoluteString.contains(kFBAppId) {

    return FBSDKApplicationDelegate.sharedInstance().application(app, open: url, options: options)

  }

  if let dynamicLink = DynamicLinks.dynamicLinks().dynamicLink(fromCustomSchemeURL: url) {
    print(dynamicLink.url ?? URL(string: "test") as Any)
    return true
  }

    return GIDSignIn.sharedInstance().handle(url, sourceApplication: options[.sourceApplication] as? String, annotation: options[.annotation])

}

func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {

  //This method is not getting called
}

最佳答案

对于那些使用 AppDelegate.swift 之外的单独 SceneDelegate.swift 的人的附加答案: AppDelegate 中的这个方法 >

func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
    if userActivity.activityType == CSSearchableItemActionType {

}

现在在 SceneDelegate 中 >

func scene(_ scene: UIScene, continue userActivity: NSUserActivity) {

}

关于ios - 打开 iOS 应用程序后,未调用 "continue userActivity:"方法 - Firebase 动态链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55585712/

相关文章:

ios - Swift2 iOS Reachability Class 和 NSNotificatonCenter 未接收广播

ios - 从应用委托(delegate)调用 UIViewController 方法

c# - MonoGame - 在 iOS 上使用 SpriteBatch 平铺 Texture2D

ios - CBPeripheralManager 限制

ios - UITableViewCell ScrollView

swift - 减慢 CAGradientLayer 动画速度

ios - 从应用程序委托(delegate)设置标签栏角标(Badge)

ios - UITableViewRowAnimation 被忽略

ios - 为什么我总是在ios中获得缓存的位置

swift - 如何修复 'dynamic' 属性 'IpfSetId' 也必须是 '@objc' ?