动态链接对象没有网址 [英] Dynamic link object has no url

查看:68
本文介绍了动态链接对象没有网址的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我尝试接收链接时,我为我的Firebase项目创建了DynamicLink,我收到的消息太奇怪了.我的动态链接对象没有url".

I created the DynamicLink for my firebase project when I am trying to receive the link I am getting "That's weird. My dynamic link object has no url".

func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
        if let incomingURL = userActivity.webpageURL{
                   print("Incoming URL is \(incomingURL)")
                   let linkHandled = DynamicLinks.dynamicLinks().handleUniversalLink(incomingURL)
                   {(dynamicLink, error) in
                       guard error == nil else{
                           print("Found an error! \(error!.localizedDescription)")
                           return
                       }
                       if let dynamicLink = dynamicLink{
                        self.handleIncomingDynamicLink(dynamicLink)
                       }
                   }
                   if linkHandled{
                       return true

                   }
                   else{
                       return false
                   }
               }
               return false
    }


 func handleIncomingDynamicLink(_ dynamicLink: DynamicLink){
        guard let url = dynamicLink.url else{
            print("That's weird. My dynamic link object has no url")
            return
        }
        print("Your incoming link parameter is\(url.absoluteString)")
}

推荐答案

检查了所有博客并将此问题发布在firebase上之后,我没有找到任何解决方案,但是我想出了这个具体解决方案,它肯定会工作

此处: dynamicLinkURL 是您的主要动态链接,而 shortHandURL 是与您的动态链接关联的深层链接URL.希望以下代码段对您有所帮助.

here: dynamicLinkURL is your main dynamic link and shortHandURL is your deeplink URL which is associated with your dynamic link. I hope the below snippet will help you.

func dynamicLinkhandler(_ dynamicLinkURL: URL, onCompletion: @escaping(_ success: Bool) -> Void) {
    URLSession.shared.dataTask(with: dynamicLinkURL) { (data, response, error) in
        guard error == nil else {
            print("Found Error \(String(describing: error?.localizedDescription)))")
            return
        }
        guard let shortHandURL = response?.url, shortHandURL != dynamicLinkURL else {
            print("Thats Weird, my dynamic link has no URL")
            onCompletion(false)
            return
        }
        onCompletion(true)
    }.resume()
}

这篇关于动态链接对象没有网址的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆