我正在为 Android 和 iOS 开发 Flutter 移动应用程序。当我卸载并重新安装该应用程序时,它会直接导航到该应用程序,而不询问身份验证详细信息。我希望它会在每次全新安装时提示登录,但它似乎会以某种方式记住以前的会话详细信息。
我使用手机号码和 OTP 进行身份验证。当用户登录应用程序时,他们的数据将使用 flutter_secure_storage 存储在本地存储中。如果用户卸载并重新安装应用程序,它不会提示他们再次登录,而是直接将他们带到主屏幕
这是因为安全存储将数据保存在手机存储本身上,而不是导致您现在遇到的问题的应用程序, 您需要创建另一个标志来帮助您确定它是否是第一次运行, 此示例使用 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());
}