swift - 如果应用程序未以编程方式安装 firebase 动态链接,则重定向到 iOS App Store

标签 swift xcode firebase firebase-dynamic-links

我的动态链接在大部分情况下都有效,并且全部以编程方式完成:

  • 用户点击链接,通过“打开”按钮重定向到网站
  • 链接会打开应用,并让用户转到应用中的正确位置

但是我想补充一点,如果用户没有安装我的应用程序,那么我希望将其重定向到应用程序商店,以显示我的应用程序。

如何以编程方式添加此内容?我知道我可以在链接前缀下创建一个动态链接,它将按照我想要的方式运行 - 但我想以编程方式执行此操作,因为我已经以编程方式构造了链接的行为。

谢谢大家。

这是我的代码,用户可以在其中共享他们的链接:

@IBAction func shareFirstButton(_ sender: UIButton) {
        if let uid = Auth.auth().currentUser?.uid {
            guard let link = URL(string: "https://www.testApp123.com/uid=" + uid) else {
                return
            }
            let dynamicLinksDomain = "testApp123.page.link"
            let linkBuilder = DynamicLinkComponents(link: link, domain: dynamicLinksDomain)
            linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "com.burgertralla.myTestApp")
            linkBuilder.shorten { (url, _, _) in
                if let url = url {
                    let activityViewController = UIActivityViewController(activityItems: [url], applicationActivities: nil)
                    activityViewController.popoverPresentationController?.sourceView = self.view
                    self.present(activityViewController, animated: true, completion: nil)
                }
            }
        }
    }

最佳答案

您必须添加linkBuilder.iOSParameters.appStoreID

关于swift - 如果应用程序未以编程方式安装 firebase 动态链接,则重定向到 iOS App Store,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54522799/

相关文章:

swift - 如何在 RealityKit 中以编程方式将 Material 添加到 ModelEntity?

firebase - 在 Angular 中(使用 angularfire2 和 typescript),如何获取使用 firestore 时抛出的错误的类型?

javascript - 修改嵌入的 Angular Directive(指令)

objective-c - 将 xcode 更新到 4.5 后存档应用程序时出错

ios - 运行 xcode 应用程序时找不到设备消息

android - 如何在 Firebase 类中表示嵌套数据

ios - 如何使用共享扩展iOS共享现有的主应用程序源代码?

swift - 字典中可选值的意外 nil 检查结果

Swift 编译器错误 : Segmentation-fault 11 thrown when using type constraints

xcode - 具有多个 NSFetchedResultsControllers 的 UITableView 导致断言失败