Я думаю, вы должны сначала взглянуть на документацию Firebase для iOS о том, как создавать динамические ссылки, которые вы можете использовать для аутентификации электронной почты.
https://firebase.google.com/docs/auth/ios/email-link-auth https://firebase.google.com/docs/auth/ios/passing-state-in-email-actions#configuring_firebase_dynamic_links
После того, как вы закончите с этими двумя, проверьте следующий код:
func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool {
// [END old_delegate]
if handlePasswordlessSignIn(withURL: url) {
return true
}
}
func handlePasswordlessSignIn(withURL url: URL) -> Bool {
let link = url.absoluteString
// [START is_signin_link]
if Auth.auth().isSignIn(withEmailLink: link) {
// [END is_signin_link]
UserDefaults.standard.set(link, forKey: "Link")
(window?.rootViewController as? UINavigationController)?.popToRootViewController(animated: false)
window?.rootViewController?.children[0].performSegue(withIdentifier: "passwordless", sender: nil)
return true
}
return false
}
Это всего лишь пример того, как вы можете обрабатывать глубокую ссылку в вашем приложении после того, как пользователь нажмет на ссылку.Метод делегата
func application (_ application: UIApplication, открытый URL: URL, sourceApplication: String ?, аннотация: любая) -> используется Bool
в AppDelegateдля всех глубоких ссылок в приложение.Например, вы можете создать собственную схему, которой будет соответствовать ваше приложение.И вы можете отправлять ссылки типа URL с вашей пользовательской схемой в приложение, например, из браузера.
Чтобы сделать это, просто откройте Xcode, перейдите в «Настройки проекта» -> «Информация» и добавьте в раздел «Типы URL»новая схема URL.Добавьте что-то вроде com.myApp, чтобы оно было как можно более единообразным.Затем вы можете просто набрать в браузере com.myApp: // main и обработать это в appDelegate.
Редактировать: в их документах говорится, что вы можете представить подсказку внутри приложения для ввода пользователемэлектронная почта.Откуда пользователь открывает свою электронную почту, на самом деле вас не волнует, если ваша динамическая ссылка настроена правильно.