我正在使用动态链接,当用户通过动态链接安装应用程序并第一次打开时,我在场景委托中实现了以下功能...
private func handleFirebaseDynamicLinksFromScheme(_ url: URL) {
guard let dynamicLink = DynamicLinks.dynamicLinks().dynamicLink(fromCustomSchemeURL: url) else {
print("Failed to retrieve dynamic link")
return
}
if dynamicLink.url != nil {
handleIncomingDynamicLink(dynamicLink)
} else {
print("Dynamic link is present but does not contain a URL: \(dynamicLink)")
}
}
// Call for a launched app after download from AppleStore
func scene(_ scene: UIScene,
openURLContexts URLContexts: Set<UIOpenURLContext>) {
if let schemeURL = URLContexts.first?.url {
handleFirebaseDynamicLinksFromScheme(schemeURL)
print("handleFirebaseDynamicLinksFromScheme url = \(schemeURL)")
}
}
但我收到打印“动态链接存在但不包含 URL”并且在动态链接中 URL 为空。可能是什么原因?因为之前它工作正常。以及其他使动态链接及其 URL 正常工作的功能(安装应用程序时)。
这个问题似乎是在通过动态链接从应用程序商店安装应用程序时特别出现的。
代码中似乎没有明显的问题。考虑代码本身之外的观点可能是有益的。 以下指标可能会提供一些帮助。