[flutter] shared_preferences 를 사용하여 사용자가 선택한 비밀번호 잠금 시간을 저장하는 방법은 무엇인가요?

비밀번호 잠금 시간을 저장하기 위해 Flutter의 shared_preferences 패키지를 사용할 수 있습니다. shared_preferences는 간단한 키-값 저장소를 제공하며 Android와 iOS 플랫폼에서 사용할 수 있습니다.

1. 등록 및 설치

먼저, pubspec.yaml 파일에 shared_preferences 패키지를 등록해야 합니다. 아래와 같이 dependencies 섹션에 추가해주세요:

dependencies:
  flutter:
    sdk: flutter
    
  shared_preferences: ^2.0.6

설치하기 위해 터미널에서 다음 명령을 실행해주세요:

flutter pub get

2. shared_preferences 인스턴스 생성

shared_preferences 패키지를 사용하기 위해 먼저 인스턴스를 생성해야 합니다. 아래와 같이 SharedPreferences 인스턴스를 생성하고 초기화해주세요:

import 'package:shared_preferences/shared_preferences.dart';

Future<void> saveLockTime(int lockTime) async {
  SharedPreferences prefs = await SharedPreferences.getInstance();
  prefs.setInt('lockTime', lockTime);
}

3. 데이터 저장

사용자가 선택한 비밀번호 잠금 시간을 저장할 메소드를 만들어 봅시다. saveLockTime 메소드를 아래와 같이 구현할 수 있습니다:

Future<void> saveLockTime(int lockTime) async {
  SharedPreferences prefs = await SharedPreferences.getInstance();
  
  // 비밀번호 잠금 시간을 저장합니다
  prefs.setInt('lockTime', lockTime);
}

4. 데이터 불러오기

사용자가 선택한 비밀번호 잠금 시간을 불러올 수도 있습니다. 이를 위해서는 getInt 메소드를 사용합니다.

Future<int> getLockTime() async {
  SharedPreferences prefs = await SharedPreferences.getInstance();
  
  // 저장된 비밀번호 잠금 시간을 불러옵니다
  int lockTime = prefs.getInt('lockTime') ?? 0;
  
  return lockTime;
}

5. 사용 예시

위에서 작성한 메소드를 사용하는 예시 코드를 만들어보겠습니다:

// 비밀번호 잠금 시간을 저장합니다
saveLockTime(30);

// 저장된 비밀번호 잠금 시간을 불러옵니다
int lockTime = await getLockTime();
print('비밀번호 잠금 시간: $lockTime분');

참고 자료

  1. shared_preferences 패키지
  2. Flutter 공식 문서 - shared_preferences