Flutter应用登出后新用户登录仍显示旧用户数据求助
问题:登出后新用户登录仍显示旧REST API数据
点击登出按钮后,应用成功完成登出操作,但同一设备上新用户登录后,仍会显示旧用户的数据,直到关闭应用(iPhone上通过上滑操作退出)并重新打开,才会获取当前用户的数据。其中Firebase数据已正确获取当前用户的内容,但REST API返回的数据仍为旧用户的,重启应用后才会获取新用户数据。
已尝试的解决方案
- 清除SharedPreferences数据:
Future<void> clearAllData() async { SharedPreferences prefs = await SharedPreferences.getInstance(); await prefs.clear(); }
- 使用
path_provider: ^2.0.12清除缓存目录:
Future<void> _deleteCacheDir() async { Directory tempDir = await getTemporaryDirectory(); if (tempDir.existsSync()) { tempDir.deleteSync(recursive: true); } } Future<void> _deleteAppDir() async { Directory appDocDir = await getApplicationDocumentsDirectory(); if (appDocDir.existsSync()) { appDocDir.deleteSync(recursive: true); } }
- Firebase登出函数:
Future<void> logout() async => await _auth.signOut();
已查阅相关Stack Overflow解决方案,但问题仍未解决,请求帮助。
内容的提问来源于stack exchange,提问作者cmm
相关产品推荐
相关产品推荐

