如何在移动应用程序(离线或在线)中存储有关登录的信息?
How to store information about login in mobile application (offline or online)?
我做了一个简单的应用程序,可以让你离线拍照并标记它们。一旦有互联网连接,这些数据就会发送到服务器。
我使用了一个很棒的后端解决方案——Appwrite。效果很好。
我最不想做的就是用户注册和登录。 AppWrite SDK 提供了用于创建用户会话、身份验证的现成方法。
但是,如果我的应用程序也可以离线工作,我会遇到一个问题,它应该如何工作。
例如
- 我有互联网连接 - 我登录到应用程序 - 正在创建会话。
- 下次打开应用程序时,登录屏幕应该不会再出现了。如果我无法访问互联网,应用程序如何知道会话处于活动状态而不显示登录屏幕?
- 同样如果我在没有网络的情况下退出应用程序,之前的会话不会被删除。
对于如何实现这一目标的任何建议,我将不胜感激。总结一下——用户登录信息应该写在本地的某个地方吗?
最简单的方法是使用shared_preferences(离线)
https://pub.dev/packages/shared_preferences
和 Firestore(在线)
https://firebase.flutter.dev/docs/firestore/usage/
将令牌或布尔值存储为 userLogged 到本地存储将是应用程序识别用户登录的最佳选择。
本地存储的一种简单解决方案是使用共享首选项:https://pub.dev/packages/shared_preferences
我做了一个简单的应用程序,可以让你离线拍照并标记它们。一旦有互联网连接,这些数据就会发送到服务器。 我使用了一个很棒的后端解决方案——Appwrite。效果很好。
我最不想做的就是用户注册和登录。 AppWrite SDK 提供了用于创建用户会话、身份验证的现成方法。 但是,如果我的应用程序也可以离线工作,我会遇到一个问题,它应该如何工作。 例如
- 我有互联网连接 - 我登录到应用程序 - 正在创建会话。
- 下次打开应用程序时,登录屏幕应该不会再出现了。如果我无法访问互联网,应用程序如何知道会话处于活动状态而不显示登录屏幕?
- 同样如果我在没有网络的情况下退出应用程序,之前的会话不会被删除。
对于如何实现这一目标的任何建议,我将不胜感激。总结一下——用户登录信息应该写在本地的某个地方吗?
最简单的方法是使用shared_preferences(离线) https://pub.dev/packages/shared_preferences 和 Firestore(在线) https://firebase.flutter.dev/docs/firestore/usage/
将令牌或布尔值存储为 userLogged 到本地存储将是应用程序识别用户登录的最佳选择。 本地存储的一种简单解决方案是使用共享首选项:https://pub.dev/packages/shared_preferences