반응형
간단한 값을 저장하기 위해 Android에서는 SharedPreferences를 사용합니다.
Flutter에서도 비슷한 기능을 제공하기 위해 https://pub.dev/packages/shared_preferences 라는 plugin을 제공하고 있습니다.
사용법은 간단합니다.
flutter pub add shared_preferences
위와 같은 명령어를 실행하거나 pubspec.yaml 에 아래와 같이 추가합니다.
dependencies:
shared_preferences: ^2.1.0
인스턴스를 생성하여 아래와 같이 사용하시면 됩니다.
SharedPreferences prefs = await SharedPreferences.getInstance();
// 값을 저장하기 위해
prefs.setString('key', 'value');
// 값을 가져오기 위해
String? value = prefs.getString('key');
// 값을 삭제하기 위해
prefs.remove('key');
Android나 iOS Native plugin을 사용하시는 분들 중에 native단에서 저장된 값을 사용해야하는 경우가 있으면 아래와 같은 방법을 이용하면 됩니다.
Android의 경우 아래와 같이 사용하시면 Flutter에서 저장한 값을 가져오거나 활용할 수 있습니다.
알아봐야할 점은 SharedPreferences를 가져오는 키값은 "FlutterSharedPreferences"이고
저장된 값을 가져오는 키값은 Flutter에서 사용한 키값에 prefix로 "flutter."가 추가됩니다.
// SharedPreferences 가져오기
SharedPreferences prefs = context.getSharedPreferences("FlutterSharedPreferences", Context.MODE_PRIVATE)
// 값 가져오기
String value = prefs.getString("flutter.key", null)
iOS는 NSUserDefaults를 사용하고 Android와 마찬가지로 key앞에 prefix로 "flutter."가 추가됩니다.
// UserDefaults 가져오기
let defaults = UserDefaults.standard
// 값 가져오기
let value = defaults?.string(forKey: "flutter.key")
반응형
'Flutter' 카테고리의 다른 글
[Flutter]해당 날짜가 월의 몇 주차인지 구하는 방법 (0) | 2023.02.17 |
---|