首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在flutter应用中提高Firebase认证的速度

如何在flutter应用中提高Firebase认证的速度
EN

Stack Overflow用户
提问于 2019-11-04 19:58:06
回答 1查看 698关注 0票数 0

我已经建立了一个具有登录和注册功能的应用程序。我还添加了注销功能,也当用户关闭并重新打开应用程序firebase检查用户是否注销,但问题是当我打开应用程序firebase时,至少需要8-10秒来检查用户是否已经登录,所以如何提高从firebase的速度,使用户不需要等待8-10秒的更多。

代码语言:javascript
复制
  void initState() {
    super.initState();
    pageController = PageController();
    // Detects when user signed in
    googleSignIn.onCurrentUserChanged.listen((account) {
      handleSignIn(account);
    }, onError: (err) {
      print('Error signing in: $err');
    });
    // Reauthenticate user when app is opened
    googleSignIn.signInSilently(suppressErrors: false).then((account) {
      handleSignIn(account);
    }).catchError((err) {
      print('Error signing in: $err');
    });
  }
  handleSignIn(GoogleSignInAccount account) async {
    if (account != null) {
      await createUserInFirestore();
      setState(() {
        isAuth = true;
      });
      configurePushNotifications();
    } else {
      setState(() {
        isAuth = false;
      });
    }
  }
EN

回答 1

Stack Overflow用户

发布于 2019-11-04 20:46:14

我正在使用这种方法来检查用户是否登录了应用程序

代码语言:javascript
复制
Auth auth = Auth();

  await auth.getCurrentUser().then((user) async {
      runApp(MaterialApp(
        theme: _themeData(),
        home: user != null
            ? Home(
            userId: user.uid
        )
            : Login(),
        debugShowCheckedModeBanner: false,
        routes: routes,
      ));
  }).catchError((error) {
    print("Here is ERROR $error");
  });
}

告诉用户uid几乎不需要一到两秒钟。我希望它能解决你的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58693010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档