ios - Firebase动态链接不会缩短URL

标签 ios swift firebase firebase-dynamic-links

我正在尝试通过以下代码获取动态链接以缩短我的网址:

guard let link = URL(string: "https://myapp.com") else { return }
let dynamicLinksDomainURIPrefix = "https://app.myapp.com/link"
let linkBuilder = DynamicLinkComponents(link: link, domainURIPrefix: dynamicLinksDomainURIPrefix)
linkBuilder?.iOSParameters = DynamicLinkIOSParameters(bundleID: "com.myapp.ios")

guard let longDynamicLink = linkBuilder?.url else { return }
print("The long URL is: \(longDynamicLink)")

let options = DynamicLinkComponentsOptions()
options.pathLength = .short
linkBuilder?.options = options
linkBuilder?.shorten() { url, warnings, error in
  guard let url = url, error != nil else { return }
  print("The short URL is: \(url)")
}
它可以很好地打印长URL,但是永远不会调用下面的行(对于短URL):
print("The short URL is: \(url)")
因为url返回nil,我也不知道为什么。在指南或在线上找不到的任何内容都无法将我引向正确的方向。
我究竟做错了什么??

最佳答案

我认为是因为以下错误:

guard let url = url, error != nil else { return }
您说的是确保存在一个非nil的URL,并确保存在错误。
我认为Firebase文档是错误的。相反,您想要:
guard let url = url, error == nil else { return }

关于ios - Firebase动态链接不会缩短URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63643673/

相关文章:

android - iOS 上是否有 "adb shell"的等效项

swift - 如何使用 Realm 浏览器创建新的 Realm 实例

ios - AppDelegate 在我添加 firebase 时出错

ios - 如何从 firebase 数据库设置个人资料图片

windows - 适用于 Windows 的 Firebase FCM

ios - 如何在 map 上重绘叠加层

javascript - 取消周末重复本地通知 [React Native]

ios - XCDYouTubeClient 未在 Swift 4 中播放视频

ios - Levenshtein 距离算法优于 O(n*m)?

swift - 用于在 UICollectionView 中下载和显示图像的 UIImageView 扩展