flutter_secure_storage
앱을 껏다 켜도 데이터를 유지할 수 있음.
token이나 사용자정보를 안전하게 데이터베이스에 저장할 수 있는 라이브러리.
사용하기
https://pub.dev/packages/flutter_secure_storage
Pubspec.yaml 에 라이브러리를 추가합니다.
버전은 위에 페이지에서 확인.
안드로이드는 따로 설정을 해줘야 합니다.
android > app > build.gradle 에서 minSdkVersion을 18이상으로 해줘야 합니다.
그리고 compileSdkVersion 을 33이상 부터 지원히기 때문에 이부분도 수정해줍니다.
그 뒤로 사용방법은 매우 간단합니다.
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
// Create storage
final storage = new FlutterSecureStorage();
// Read value
String value = await storage.read(key: key);
// Read all values
Map<String, String> allValues = await storage.readAll();
// Delete value
await storage.delete(key: key);
// Delete all
await storage.deleteAll();
// Write value
await storage.write(key: key, value: value);
사용할 부분에 final storage = FlutterSecureStorage(); 로 사용할 준비를 합니다.
처음에는 아무것도 저장하지 않았으니 저장부터 해야합니다.
그리고 모든 작업은 비동기로 이루어지기에 async - await 을 사용해야 합니다.
1. 저장
await storage.write(key: "키값", value: "넣을 값");
으로 키값과 값을 write해주면 데이터베이스에 저장됩니다.
값으로는 String 만 들어간다.
다른유형의 값을 넣으려면 JSON으로 만들어서 넣어줘여 한다.
2. 읽기
저장을 했으면 읽어와서 사용해야죠?
String value = await storage.read(key: "키값);
1번에서 저장한 키값을 넣어서 value값을 가져올 수 있습니다.
이렇게 한개씩 읽어올 수도 있고 한번에 읽을수도 있습니다.
Map<String, String> allValues = await storage.readAll();
저장한 모든 데이터를 String, String 형태로 가져옵니다.
stirng data = allValues["키값];
한다면 원하는 값을 가져올수 있겠죠.
3. 삭제
간단합니다.
await storage.delete(key: key);
위와 같은 방식대로 키값을 넣어주면 해당하는 키에 대한 값이 삭제 됩니다.
await storage.deleteAll();
전부 삭제됩니다.
https://jutole.tistory.com/123
비슷한 패키지 사용법도 확인해보세요~
'Flutter > 기본' 카테고리의 다른 글
[Flutter] .g.dart 파일 정리하기. (0) | 2023.01.25 |
---|---|
[Flutter] json_serializable 사용하기 (0) | 2023.01.24 |
[Flutter] Base64 encode (0) | 2023.01.23 |
[Flutter] dark테마로 앱만들기 (0) | 2023.01.22 |
[Flutter] Text Height 주는 방법 (0) | 2023.01.15 |