【问题标题】:How to redirect Universal link to app store without showing pop up on Safari browser?如何将通用链接重定向到应用商店而不在 Safari 浏览器上显示弹出窗口?
【发布时间】:2023-03-28 03:49:01
【问题描述】:

我在 iOS 应用程序中使用通用链接。对于我使用 Firebase 动态链接的通用链接。

安装应用后,通用链接工作正常。但是,当应用程序未安装时,此链接将在 safari 中打开。

我正在 Swift 中以编程方式创建动态链接(通用链接)。

func createDynamicLinkForConsumer(){


        guard let link = URL(string: "https://<Domain-Name>?consumerID=\(Auth.auth().currentUser?.uid ?? "")&type=consumerReferral") else { return }

        let dynamicLinksDomainURIPrefix = "<appName>.page.link"

        let linkBuilder = DynamicLinkComponents(link: link, domain: dynamicLinksDomainURIPrefix)
        linkBuilder.options?.pathLength = .short
        linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "<Bundle-ID>")
        linkBuilder.iOSParameters?.appStoreID = "<app-store-id>"
        linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "<android package name>")
        linkBuilder.navigationInfoParameters?.isForcedRedirectEnabled = true


        guard let longDynamicLink = linkBuilder.url else { return }

        print("The long URL is: \(longDynamicLink)")

        self.referralLinkLabel.text = String(describing: longDynamicLink)

        DynamicLinkComponents.shortenURL(longDynamicLink, options: nil) { (url, warnings, error) in

            if url != nil {

                print("Short URL is: \(url)")

                self.referralLinkLabel.text = String(describing: url!)

            }

        }

    }

这是 safari 打开链接后打开的屏幕:

点击警告框浏览器的“打开”按钮后打开应用商店应用。

其实我想做的就是重定向到应用商店,这样用户就可以直接下载应用了。我不想通过这两个步骤打开应用商店。

【问题讨论】:

  • 你找到解决办法了吗?
  • 我也面临同样的问题。所以,如果你已经完成了,请帮助我。

标签: ios firebase firebase-dynamic-links ios-universal-links


【解决方案1】:

您应该首先初始化 DynamicLinkNavigationInfoParameters,然后将属性设置为 true。

linkBuilder.navigationInfoParameters = DynamicLinkNavigationInfoParameters()
linkBuilder.navigationInfoParameters?.isForcedRedirectEnabled = true

【讨论】:

    【解决方案2】:

    您好,您可以通过检查动态链接来减少这些步骤

    但您应该记住,您在 Messanger 应用和其他一些应用中的链接可能存在问题。

    【讨论】:

    • 我正在以编程方式创建该动态链接,并添加了参数“isForcedRedirectEnabled = true”。但它不起作用。请再次检查问题,我已编辑。
    • 您可以查看文档,这正是您所需要的。也许您可以使用最新版本更新库,但我认为最好保留此页面。
    猜你喜欢
    • 2023-03-22
    • 1970-01-01
    • 2017-03-07
    • 2013-04-02
    • 2016-07-02
    • 2013-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多