firebase - 在最新(2020年8月)firebase更新之后,使用电子邮件链接的完整登录已不再起作用

标签 firebase flutter email dart firebase-authentication

这是我的代码

Future<bool> sendSignInWithEmailLink(email) async {
  final FirebaseAuth user = FirebaseAuth.instance;
  _email = email;

//  try {
//    user.sendSignInWithEmailLink(
//        email: email,
//        androidInstallIfNotAvailable: true,
//        iOSBundleID: kName, //constant
//        androidMinimumVersion: "16",
//        androidPackageName: kName, //constant
//        url: kLink, //constant
//        handleCodeInApp: true);
  try {
    user.sendSignInLinkToEmail(
      email: _email,
      actionCodeSettings: ActionCodeSettings(
          url: appEmail + _email,
          iOS: {"bundleId": kName},
          android: {
            "packageName": kName,
            "installApp": true,
            "minimumVersion": '12'
          },
          handleCodeInApp: true,
          dynamicLinkDomain: kLink),
    );
  } catch (e) {
    return false;
  }
  print(email + "<< sent");
  return true;
}

Future<void> getInitialLink() async {
  final PendingDynamicLinkData data =
      await FirebaseDynamicLinks.instance.getInitialLink();

  final Uri deepLink = data?.link;
  print(deepLink.toString());

  if (deepLink.toString() != null) {
    _link = deepLink.toString();
    _signInWithEmailAndLink();
  }
}

Future<void> _signInWithEmailAndLink() async {
  final FirebaseAuth user = FirebaseAuth.instance;
  bool validLink = await user.isSignInWithEmailLink(_link);
  if (validLink) {
    try {
      await user.signInWithEmailLink(email: _email, emailLink: _link);
    } catch (e) {
      print(e);
    }
  }
}
在更新注释之前(sendSignInWithEmailLink),代码将正常工作。但是更新后它不再起作用,我尝试使用sendSignInLinkToEmail,但无法使它起作用。
我该如何使其重新工作。

最佳答案

为我工作:

            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,
              ),
            );

关于firebase - 在最新(2020年8月)firebase更新之后,使用电子邮件链接的完整登录已不再起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63644325/

相关文章:

javascript - Firebase 云函数错误 - 函数返回未定义、预期的 Promise 或值

android - Flutter Android 构建因 middles/compiled_local_resources/debug/out 失败,不是可读目录

c# - 发送内联 MHTML

firebase - 收到来自 Firebase 云消息传递的通知,但未显示在云消息传递报告中

javascript - FIrebase jQuery .on 方法正在逐一更新数组值,而不是一次全部更新

android - FCM 后台同步失败 : AUTHENTICATION_FAILED

android - AndroidManifest.xml :5:9-42 requires a placeholder substitution but no value for <applicationName> is provided. 中的属性 application@name - Flutter

flutter - 如何获取待处理通知的[scheduledDate](flutter本地通知)

java - 如何使用 Java 6 SE 发送电子邮件?

c - SMTP:SSL_connect 失败但没有错误