Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
Tags
- HTTP
- flutter
- 앱
- 컴공
- mac os 권한
- Kotlin
- chmod
- API
- mac permission denied
- kotlin-android-extensions
- 코틀린
- App
- import
- android studio
- 맥북 권한
- chown -R
- 앱개발
- import안됨
- dart
- chown
- login_btn
Archives
- Today
- Total
Milan Dev
#Flutter. shared preferences 본문
플러터에선 중요한 데이터를 제외한 단순데이터를 비동기적으로 유지하기 위해서 'Shared Preference' 를 사용할 수 있다.
https://pub.dev/packages/shared_preferences
shared_preferences | Flutter Package
Flutter plugin for reading and writing simple key-value pairs. Wraps NSUserDefaults on iOS and SharedPreferences on Android.
pub.dev
pub.dev에서 지원해주는 패키지로 쉽게 설치하여 사용할 수 있다.

공식문서를 보면 터미널에 'flutter pub add shared_preferences'를 입력하면 쉽게 설치가 가능하다.
사용법
1. shared preferences를 import해준다.
import 'package:shared_preferences/shared_preferences.dart';
2. shared preferences 인스턴스 생성하기.
final SharedPreferences prefs = await SharedPreferences.getInstance();
3 . 데이터 설정 시 문법
3 - 1. 저장
// await prefs.setInt([key값], [value값]);
await prefs.setInt('counter', 10); //Int형 저장
await prefs.setBool('repeat', true); //Bool형 저장
await prefs.setDouble('decimal', 1.5); //Double형 저장
await prefs.setString('action', 'Start'); //String형 저장
await prefs.setStringList('items', <String>['Earth', 'Moon', 'Sun']); //String list 저장
3 - 2. 값 읽기
// final int? counter = prefs.getInt([key값]);
// key값에 맞는 value 값을 변수에 저장
final int? counter = prefs.getInt('counter');
final bool? repeat = prefs.getBool('repeat');
final double? decimal = prefs.getDouble('decimal');
final String? action = prefs.getString('action');
final List<String>? items = prefs.getStringList('items');
3 - 3. 삭제
//await prefs.remove([key값]); 해당 키값의 데이터를 삭제
await prefs.remove('counter');
이렇게 shared preferences를 사용하면 데이터를 쉽게 핸드폰 로컬에 저장하여 사용할 수 있다.
나의 경우 버튼 이벤트에 상태같은 가벼운 데이터를 저장하기위해 shared preferences를 활용했다.
https://github.com/jjjuyoa/toonflix
GitHub - jjjuyoa/toonflix
Contribute to jjjuyoa/toonflix development by creating an account on GitHub.
github.com
'Flutter' 카테고리의 다른 글
| #Flutter. SVG(벡터이미지) URL, flutter에서 사용하기. (0) | 2024.01.12 |
|---|---|
| #Flutter. EPL 일정 앱 개인 프로젝트 ep.1 팀 선택화면 만들기 (1) | 2024.01.10 |
| #Flutter. Api service: 파라미터를 갖는 메소드 초기화 (0) | 2023.12.25 |
| #Flutter. GestureDetector: 사용자 동작감지 위젯 (1) | 2023.12.23 |
| mac os[M1] 권한 문제 해결 #permission denied (0) | 2023.12.21 |