共享首选项Dart-InternalLinkedHashMap';不是类型为';地图';
在尝试整合共享偏好时,我遇到了以下问题。我是飞镖初学者共享首选项Dart-InternalLinkedHashMap';不是类型为';地图';,dart,sharedpreferences,flutter,Dart,Sharedpreferences,Flutter,在尝试整合共享偏好时,我遇到了以下问题。我是飞镖初学者 Unhandled exception: [ ] E/flutter (24504): type '_InternalLinkedHashMap<dynamic, dynamic>' is not a subtype of type 'Map<String, Object>' where [ ] E/flutter (24504): _InternalLinkedHashMap is
Unhandled exception:
[ ] E/flutter (24504): type '_InternalLinkedHashMap<dynamic, dynamic>' is not a subtype of type 'Map<String, Object>' where
[ ] E/flutter (24504): _InternalLinkedHashMap is from dart:collection
[ ] E/flutter (24504): Map is from dart:core
[ ] E/flutter (24504): String is from dart:core
[ ] E/flutter (24504): Object is from dart:core
[ ] E/flutter (24504):
[ ] E/flutter (24504): #0 SharedPreferences.getInstance (package:shared_preferences/shared_preferences.dart)
[ ] E/flutter (24504): <asynchronous suspension>
[ ] E/flutter (24504): #1 AuthManager.init (package:apms_timesheet/data/user/auth_manager.dart:25:55)
[ ] E/flutter (24504): <asynchronous suspension>
[ ] E/flutter (24504): #2 _SplashState._init (package:apms_timesheet/ui/splash/splash_screen.dart:36:24)
[ ] E/flutter (24504): <asynchronous suspension>
[ ] E/flutter (24504): #3 _SplashState.initState (package:apms_timesheet/ui/splash/splash_screen.dart:32:5)
来自auth_manager.dart的代码段
Future init() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
String username = prefs.getString(KEY_USERNAME);
String oauthToken = prefs.getString(KEY_OAUTH_TOKEN);
if (username == null || oauthToken == null) {
_loggedIn = false;
await logout();
} else {
_loggedIn = true;
_username = username;
}
_initialized = true;
}
您使用的颤振版本(
flatter doctor
)和shared_preferences
(签入pubspec.lock
)是什么?我希望在@GünterZöchbauer Dart 2.0和颤振v0.3.0中修复
Future init() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
String username = prefs.getString(KEY_USERNAME);
String oauthToken = prefs.getString(KEY_OAUTH_TOKEN);
if (username == null || oauthToken == null) {
_loggedIn = false;
await logout();
} else {
_loggedIn = true;
_username = username;
}
_initialized = true;
}