我试图在线阅读,但是找不到如何使用sendSignInLinkToEmail()
我特别对什么是actionCodeSettings及其应具有的值感兴趣。提前输入。
Future verificationEmail(email) async {
try {
FirebaseAuth.instance.sendSignInLinkToEmail(
email: email,
actionCodeSettings: null
} catch (err) {
print(err);
}
}
答案 0 :(得分:2)
[已弃用](是的,已经...)
FirebaseAuth.instance.sendSignInLinkToEmail(
email: "example@example.com",
actionCodeSettings: ActionCodeSettings(
url: "https://example.web.app",
android: {
'packageName': "com.example.example",
'installApp': true,
'minimumVersion': '12'
},
iOS: {
'bundleId': "com.example.example",
},
handleCodeInApp: true,
),
);
[新格式]
_firebaseAuthInstance.sendSignInLinkToEmail(
email: "rocky_balboa@example.com,
actionCodeSettings: ActionCodeSettings(
url: "https://example.page.link/cYk9",
androidPackageName: "com.example.app",
iOSBundleId: "com.example.app",
handleCodeInApp: true,
androidMinimumVersion: "16",
androidInstallApp: true),
);
答案 1 :(得分:1)
在全新的Flutter/Firebase documentation中,电子邮件链接登录似乎尚未得到充分的记录。
在这种情况下,我建议您查看适用于Android的等效Firebase文档。在这种情况下,sending an authentication link to the user's email address上的文档似乎已满足您的需求。您需要创建一个ActionCodeSettings
object并将其传递给对sendSignInLinkToEmail
的调用。
答案 2 :(得分:0)
这是当您使用电子邮件和密码创建新用户时发送电子邮件验证的方式
UserCredential _user = await FirebaseAuth.instance.signInWithEmailAndPassword(
email: 'abc@gmail.com',
password: 'password',
);
_user.user.sendEmailVerification(); // link sent on above mentioned email
这是您如何检查电子邮件是否已验证
bool isVerified = _user.user.emailVerified; // true; if verified