如何清除Flutter Firebase中以前的用户缓存数据?

REV*_*N D 5 dart firebase firebase-authentication flutter google-cloud-firestore

我面临的问题是,每当用户注销FirebaseAuth.instance.signOut()并使用另一个帐户登录时,前一个用户的数据都是可见的。我看过文档并了解了使用清除缓存数据的想法 FirebaseFirestore.clearPersistence()。我在该signOut方法中尝试了此操作,但尽管先前用户的数据仍然可见。任何人都可以解决我的问题吗!

主程序.dart

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  FirebaseFirestore.instance.settings=Settings(
    persistenceEnabled: false,
  );
  runApp(MyApp());
} 
Run Code Online (Sandbox Code Playgroud)

firebaseAuth.dart

  static logOut()async{
    await FirebaseFirestore.instance.clearPersistence();
    return  FirebaseAuth.instance.signOut();
  }
Run Code Online (Sandbox Code Playgroud)

太感谢了!

小智 2

您可能已经解决了这个问题,但我遇到了同样的问题,对我有用的是在注销时清除应用程序变量。

我创建了一个函数来清除变量并在signOut方法之前调用它