actionCodeSettings.url = URL(string: "https://caxxxxxxxxxxxant.page.link") //my domain prefix
actionCodeSettings.handleCodeInApp = true
actionCodeSettings.setIOSBundleID(Bundle.main.bundleIdentifier!
- 但是当我提供的网址为:
actionCodeSettings.url = URL(string: "https://caxxxxxxxxxant.page.link/open")
使用我在域下创建动态链接时提供的自定义网址方案,它现在通过以下代码的其他部分将我导航到我的应用程序,并出现错误“登录错误”。 *
if Auth.auth().isSignIn(withEmailLink: link) {
guard let email = UserDefaults.standard.value(forKey: "Email") as? String else {
print("Error signing in: email does not exist")
return true
}
}
else{
print("error in sign-in")
}
return false
}
我在应用程序委托(delegate)restoreHandler中接收动态链接时获得的链接:方法是
<https://caxxxxxxxxxxxxant.page.link/?link=https://sxxxx-axxxxt-exxa.firebaseapp.com&isi=14xxxxxx8&ibi=com.cxxxxxr.sxxxxxt&st=Eagle+Eye+Sales+Assistant+App&sd=Now+you+can+get+all+the+Eagle+Eye+documents+and+information+within+a+fingerprint.&cid=5xxxx60xxx558&_osl=https://caxxxxxxxxant.page.link/open&_fpb=CJxxxxxHQg==&_cpt=cpit&_iumenbl=1&_iumchkactval=1&_plt=895&_uit=1062&_cpb=1>
我猜这是因为我的传入链接不包含电子邮件。
请帮助我,如何在 Auth.auth().isSignIn(withemailLink : Link) 方法中验证我的链接。我如何通过电子邮件获取链接。
我们将不胜感激。
最佳答案
首先,Firebase Auth 不支持带有路径的自定义 FDL 域。
其次,如果您想使用自定义 FDL 域,则需要将 actionCodeSettings.url
设置为后备 URL,以防用户在其他设备(未安装 iOS 应用程序)上单击该链接。 。您需要在 actionCodeSettings.dynamicLinkDomain
中设置 FDL 域 caxxxxxxxxxxant.page.link
。
关于ios - 单击通过电子邮件收到的登录链接时,我收到无效的动态链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59647529/