[Flutter] local에 데이터 저장하기 (SharedPreferences)

두꺼비·2023년 7월 2일
1

애플리케이션을 만들다 보면 사용자 기기에 데이터를 저장해야하는 경우가 있습니다.

가령, [다시보지 않기] 같은 버튼이라거나..

저는 애플리케이션을 사용할 때, 맨 처음 실행 시에만 설명이 나오도록 설정해주기 위해서 SharedPreferences의 getBool을 사용하였습니다.

1. SharedPreferences import 하기

pubspec.yaml 파일에 들어가서
dependencies에 다음 한 줄을 추가해주세요!

dependencies:
	shared_preferences: ^2.1.1


오른쪽 위에 있는 위 사진과 같은 버튼 눌러주시는 거 잊으시면 안됩니다.

그리고 import해주시면 됩니다.

import 'package:shared_preferences/shared_preferences.dart';

2. SharedPreferences 사용하기

late SharedPreferences prefs;

Future intro() async {
  prefs = await SharedPreferences.getInstance(); // 선언
  final isFirst = prefs.getBool('isFirst'); // 'isFirst' 가져오기
  if (isFirst != null) { // 'isFirst'가 존재 한다면,
    if (isFirst == true) {
      // 처음일경우
      print('안녕하세요. 처음이시군요!');
      await prefs.setBool('isFirst', false); // value를 false로 바꿔주기
    } else {
      // 처음이 아닐 경우
      print('안녕하세요.');
    }
  } else { // 'isFirst'가 존재 하지않는다면, value를 true로 'isFirst'생성
    await prefs.setBool('isFirst', true);
  }
}

SharedPreferences에는 setBool말고도 여러가지 속성들이 많이있습니다.
setInt, setString, setStringList...등등
상황에 맞게 잘 사용하시면 될 것 같습니다.

profile
두꺼비는 두껍다

0개의 댓글