iOS应用程序:Firebase动态链接不适用于最新的Pod文件 [英] iOS Application: Firebase Dynamic Links are not working with latest Pod file

查看:67
本文介绍了iOS应用程序:Firebase动态链接不适用于最新的Pod文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们将最新的动态链接Pod集成到了我们的iOS应用程序中.

We integrated the latest Dynamic link Pod to our iOS application.

每当我们打开Firebase的链接时,Appdelegate中都不会触发任何功能.检查我们在App委托中实现的方法

Whenever we open the link of firebase no function in triggered in our Appdelegate. Check the method we implemented in App delegate

    func application(_ application: UIApplication, continue userActivity: NSUserActivity,     restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
 DynamicLinks.dynamicLinks().handleUniversalLink(userActivity.webpageURL!) { (dynamiclink, error) in
     if(dynamiclink != nil){
         let aStr = dynamiclink!.url!.absoluteString
         print("reopen url :\(String(describing: aStr.removingPercentEncoding))")
         let decodeUrl = aStr.removingPercentEncoding!
     }
 }
 return true 
}

func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
 print("got link1")
 print(" first time url :\(url)")
 let aStr = url.absoluteString
 print("url :\(String(describing: aStr.removingPercentEncoding))")
 let decodeUrl = aStr.removingPercentEncoding!
 if let dynamicLink = DynamicLinks.dynamicLinks().dynamicLink(fromCustomSchemeURL: url) {
     if dynamicLink.url != nil{
         let aStr = dynamicLink.url!.absoluteString
         let decodUrl = aStr.removingPercentEncoding!
     }
 }
return true }

我们在应用程序中使用了自定义域,我们也将它们添加到了info.plist

We are using a custom domain in our application, we added them in info.plist too

<key>FirebaseDynamicLinksCustomDomains</key>
<array>
    <string>https://page.google.com/newrequest</string>
</array>
<key>FirebaseAppDelegateProxyEnabled</key>
<string>YES</string>

我们将动态链接URL添加到了我们的AssociatedDomains中,并带有诸如 applinks:page.google.com

We added a dynamic link URL to our AssociatedDomains with a prefix of app links like applinks:page.google.com

推荐答案

在iOS 13中,不会调用AppDelegate方法.将SceneDelegate添加到您的项目.添加 func scene(_ scene:UIScene,continue userActivity:NSUserActivity){打印(userActivity.webpageURL)}

In iOS 13, AppDelegate methods will not call. Add SceneDelegate to your project. Add func scene(_ scene: UIScene, continue userActivity: NSUserActivity) { print(userActivity.webpageURL) }

我们将获得userActivity.webpageURL将是我们的长动态链接.

we will get userActivity.webpageURL will be our long dynamic link.

这篇关于iOS应用程序:Firebase动态链接不适用于最新的Pod文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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