Flutter 应用在 Android 和 iOS 上重新安装后会绕过身份验证

问题描述 投票:0回答:1

我正在为 Android 和 iOS 开发 Flutter 移动应用程序。当我卸载并重新安装该应用程序时,它会直接导航到该应用程序,而不询问身份验证详细信息。我希望它会在每次全新安装时提示登录,但它似乎会以某种方式记住以前的会话详细信息。

我使用手机号码和 OTP 进行身份验证。当用户登录应用程序时,他们的数据将使用 flutter_secure_storage 存储在本地存储中。如果用户卸载并重新安装应用程序,它不会提示他们再次登录,而是直接将他们带到主屏幕

android ios flutter authentication caching
1个回答
0
投票

这是因为安全存储将数据保存在手机存储本身上,而不是导致您现在遇到的问题的应用程序, 您需要创建另一个标志来帮助您确定它是否是第一次运行, 此示例使用 shared_preferences

以下是您需要如何配置它

void main() async {
  WidgetsFlutterBinding.ensureInitialized();

  SharedPreferences sharedPreferences = await SharedPreferences.getInstance();
  var isFirstRun = sharedPreferences.getBool("isFirstRun") ?? true;
  if (isFirstRun) {
    const storage = FlutterSecureStorage();
    await storage.deleteAll();
  }
  runApp(const MyApp());
}
© www.soinside.com 2019 - 2024. All rights reserved.