Flutter의 SharedPreferences
- 플러터 앱에서 장치(단말기)에 데이터를 로컬로 저장하는 기능을 구현합니다. 저장된 데이터를 불러오고 삭제도 가능해서 메모장과 같은 기능을 구현할 수 있습니다.
- Android, iOS, wed, windows 등에서 사용 가능합니다. (공식 사이트에서 확인 가능합니다.)
- SharedPreferences는 int, double, Booleans, String, List<Strin>과 같은 단순 데이터를 저장하는데 적합하지만 필요에 따라 앞의 형식으로 변환하여 사용할 수 있습니다.
- 데이터는 앱을 내부 저장소에 저장되기 때문에 앱을 제거하면 데이터 값은 모두 사라지게 됩니다.
SharedPreferences 사용하기
- SharedPreferences 패키지를 추가해준다
- 인스턴스 생성해준다.
SharedPreferences sp = await SharedPreferences.getInstance();
인스턴스를 생성하여 getInstance 메서드를 호출하여 인스턴스를 가져옵니다.
getInstance는 비동기식이여서 앞에 async 메소드에서 await를 사용합니다.
- 데이터 쓰기
await sp.setString('testKey', 'setter test');
데이터를 쓰기 위해 데이터 타입 별로 몇 가지 setter 메소드가 있습니다. 위에서는 string 형식이기 때문에 setString을 사용했습니다.
또한 setter 계열은 비동기식이므로 await를 사용이 필요합니다.
- 데이터 읽기
String testString = sp.getString();
값을 읽기위한 getter 또한 데이터 타입별로 존재합니다. 위의 데이터 쓰기에서는 string 형식을 사용해서 데이터가 쓰여서 getString을 사용하여 불러와줍니다. getter는 비동기식이 아니므로 await가 필요없습니다.
- 데이터 삭제
bool isDeleted = await sp.remove('testKey');
값을 삭제하려면 remove메서드를 사용할 수 있습니다. 이 메서드는 비동기식으로 await가 사용됩니다.
'Today I Learned' 카테고리의 다른 글
23년 7월 17일 TIL (0) | 2023.07.17 |
---|---|
23년 7월 14일 TIL (0) | 2023.07.14 |
23년 7월 13일 TIL (0) | 2023.07.13 |
23년 7월 11일 TIL (0) | 2023.07.11 |
23년 7월 10일 TIL (0) | 2023.07.10 |