앱을 만드려고 할 때, 데이터를 저장해야 하지만 DB를 쓸 생각은 아직 없다.
(API도 만들어야 하고... 비용도 많이 나가고...)
그럼 어떤 방법이 있을까 하다가 shared_preferences라는 패키지가 있었다.
1️⃣ shared_preferences 패키지
shared_preferences 패키지란, 주로 사용자가 설정한 값, 앱 상태, 간단한 캐시 데이터 등을 로컬에 저장할 때 사용된다.
흔히 로그인 상태나 테마, 설정 값을 저장하는 데 많이 사용하는 패키지라고 한다.
단점이라고 하면, 로컬에 저장하다보니 앱을 삭제하면 데이터도 함께 삭제된다는 것이다.
2️⃣ shared_preferences 패키지 사용준비
1. 먼저 pubspec.yaml에 dependencies를 추가하고 터미널에 "flutter pub get"을 명령한다.
dependencies:
shared_preferences: ^2.2.0 //사용할 버전 기입
2. 설치가 되었다면 사용할 dart 파일에서 import 시킨다.
import 'package:shared_preferences/shared_preferences.dart';
여기까지 빨간 줄 없이 되었다면 문제 없이 사용이 가능하다.
3️⃣ shared_preferences 패키지 설명
먼저, 데이터를 핸들링할 때 흔히들 말하는 CRUD에 대해서 설명하겠다.
Create, Read, Update, Delete의 앞 문자만 따서 만든 용어라 해야하나... 여튼 크게 이 4가지 동작으로 데이터는 핸들링 된다.
그럼 Shared_preferences 에서 CRUD를 하는 함수를 알아보자.
우선 인스턴스를 받아오자.
final prefs = await SharedPreferences.getInstance();
| 구분 | 함수 |
| Create, Update | prefs.setString(String key, String value ) prefs.setInt(String key, int value ) prefs.setBool(String key, bool value) prefs.setStringList(String key, List<String> value) |
| Read | prefs.getString(String key, String value ) prefs.getInt(String key, int value ) prefs.getBool(String key, bool value) prefs.getStringList(String key, List value) |
| Delete | prefs.remove(String key) : 특정 키 값 삭제 prefs.clear() : 모든 데이터 삭제 |
이걸 이용해서 간단한 메모장 앱 화면을 구성해보았다.

결과는 재밌당.
4️⃣ 마무리
이제 어느정도 구성은 알겠으니까, 어떤 앱을 만들지 상위 기획을 해야할 듯하다.
언제나 똑같지만 상위 기획을 하는 과정은 너무 귀찮다.
'개발 > [Flutter]' 카테고리의 다른 글
| 기획자의 앱 도전기 #6 - 바텀시트 만들기 (0) | 2025.09.28 |
|---|---|
| 기획자의 앱 도전기 #4 - 화면 이동 (2) | 2025.08.17 |
| 기획자의 앱 도전기 #3 - Flutter UI 구조 이해하기 (1) | 2025.07.20 |
| 기획자의 앱 도전기 #2 - Flutter 기본 구성 요소 (0) | 2025.07.06 |
| 기획자의 앱 도전기 #1 – Flutter 환경 세팅부터 시작! (0) | 2025.06.21 |
