如何在颤振中使用 SharedPreferences?
Posted
技术标签:
【中文标题】如何在颤振中使用 SharedPreferences?【英文标题】:How do I use SharedPreferences in flutter? 【发布时间】:2021-03-29 23:51:54 【问题描述】:我正在尝试让 GoogleSign 与一个 web 应用程序一起工作,为此我一直在关注一篇文章。这是他们说在那里用于登录的功能:
Future<String> signInWithGoogle() async
// Initialize Firebase
await Firebase.initializeApp();
final GoogleSignInAccount googleSignInAccount = await googleSignIn.signIn();
final GoogleSignInAuthentication googleSignInAuthentication =
await googleSignInAccount.authentication;
final AuthCredential credential = GoogleAuthProvider.credential(
accessToken: googleSignInAuthentication.accessToken,
idToken: googleSignInAuthentication.idToken,
);
final UserCredential userCredential =
await _auth.signInWithCredential(credential);
final User user = userCredential.user;
if (user != null)
// Checking if email and name is null
assert(user.uid != null);
assert(user.email != null);
assert(user.displayName != null);
assert(user.photoURL != null);
uid = user.uid;
name = user.displayName;
userEmail = user.email;
imageUrl = user.photoURL;
assert(!user.isAnonymous);
assert(await user.getIdToken() != null);
final User currentUser = _auth.currentUser;
assert(user.uid == currentUser.uid);
SharedPreferences prefs = await SharedPreferences.getInstance();
prefs.setBool('auth', true);
return 'Google sign in successful, User UID: $user.uid';
return null;
它说 SharedPreferences 是一个未定义的类。这是做什么的?有必要吗?如果是,我该如何解决这个问题?非常感谢您的帮助,因为这是我第一次在 Flutter Web 中使用 google 登录。
【问题讨论】:
您是否将 shared_dependencies 添加到您的 pubspec.yaml 中? 不,我应该在哪里添加它? 如果您在 pubspec.yaml 中添加了 sharedprefrences,有时更改不会反映在项目中,最好重新启动 IDE 并再次检查。让我知道它是否有效 在依赖部分,这里是官方的安装指南:pub.dev/packages/shared_preferences/install 【参考方案1】:在您的 pubspec.yaml
文件中添加共享首选项依赖项。
dependencies:
flutter:
sdk: flutter
cupertino_icons: ^1.0.0
shared_preferences: ^0.5.12+4
现在运行 flutter pug get。 像这样在文件中导入包后,
import 'package:shared_preferences/shared_preferences.dart';
现在应该可以正常工作了。
【讨论】:
【参考方案2】:-
打开
pubspec.yaml
在dependencies:
下方添加shared_preferences: ^0.5.12+4
运行flutter pub get
import 'package:shared_preferences/shared_preferences.dart';
这里是链接https://pub.dev/packages/shared_preferences/install
【讨论】:
以上是关于如何在颤振中使用 SharedPreferences?的主要内容,如果未能解决你的问题,请参考以下文章
Android中如何设置SharedPreference文件名称?
手机日期更改时从 sharedpreference 中删除保存的数据