You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 09:41:12