[flutter] shared_preferences를 사용하여 앱에서 사용자의 기본 설정값을 설정하는 방법은?

앱에서 사용자의 기본 설정값을 저장하고 관리하는 것은 중요합니다. 이러한 설정값은 앱 동작에 영향을 미치며, 사용자 경험을 향상시키는 데 기여합니다. Flutter에서는 이를 쉽게 관리하기 위해 SharedPreferences 패키지를 사용할 수 있습니다. 이 패키지를 사용하여 사용자의 기본 설정값을 영구적으로 저장하고 가져오는 방법에 대해 알아보겠습니다.

1. SharedPreferences 패키지 추가

가장 먼저 pubspec.yaml 파일에 SharedPreferences 패키지를 추가합니다.

dependencies:
  flutter:
    sdk: flutter
  shared_preferences: ^2.0.6

위와 같이 pubspec.yaml 파일에 shared_preferences 패키지를 추가합니다. 그런 다음 터미널에서 flutter pub get 명령을 실행하여 패키지를 가져옵니다.

2. SharedPreferences 초기화

SharedPreferences를 사용하기 전에 먼저 초기화해야 합니다. 주로 앱이 시작될 때 초기화 작업을 수행하는 것이 좋습니다. 예를 들어 앱의 main 함수나 첫 화면의 초기화 작업에서 이를 수행할 수 있습니다.

import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  SharedPreferences prefs = await SharedPreferences.getInstance();
  runApp(MyApp(prefs: prefs));
}

class MyApp extends StatelessWidget {
  final SharedPreferences prefs;

  MyApp({Key key, this.prefs}) : super(key: key);

  // ...
}

3. 설정값 저장 및 불러오기

이제 SharedPreferences를 사용하여 사용자의 설정값을 저장하고 불러오는 방법을 알아보겠습니다. 예를 들어 사용자의 언어 설정값을 저장하고 불러오는 코드는 다음과 같을 수 있습니다.

// 설정값 저장
prefs.setString('language', 'ko');

// 설정값 불러오기
String language = prefs.getString('language') ?? 'en';

위 예제에서 prefs는 SharedPreferences의 인스턴스로, setString 메서드를 사용하여 설정값을 저장하고, getString 메서드를 사용하여 해당 설정값을 불러오고 있습니다.

이와 같이 SharedPreferences를 사용하여 앱에서 사용자의 기본 설정값을 설정할 수 있습니다. 이 설정값을 활용하여 앱의 동작을 커스터마이즈하고 사용자에게 편리한 경험을 제공할 수 있습니다.

참고 자료