[flutter] shared_preferences를 활용하여 사용자가 선택한 언어 설정을 저장하는 방법은?
이번에는 flutter 앱에서 사용자가 선택한 언어 설정을 저장하고 가져오는 방법에 대해 알아보겠습니다. 이를 위해 shared_preferences 패키지를 사용하여 사용자의 언어 설정을 영구적으로 저장할 수 있습니다.
1. shared_preferences 패키지 추가
먼저, pubspec.yaml
파일에 shared_preferences 패키지를 추가합니다.
dependencies:
shared_preferences: ^2.0.6
그리고 터미널에서 아래 명령어를 실행하여 패키지를 설치합니다.
flutter pub get
2. 사용자가 선택한 언어 설정 저장하기
사용자가 선택한 언어를 shared_preferences에 저장하는 코드는 다음과 같습니다.
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
void saveLanguagePreference(String languageCode) async {
SharedPreferences prefs = await SharedPreferences.getInstance();
await prefs.setString('language', languageCode);
}
위의 코드에서 languageCode
는 사용자가 선택한 언어 코드입니다. 이 코드는 사용자가 설정을 변경할 때 호출되어야 합니다.
3. 저장된 언어 설정 불러오기
이제 저장된 언어 설정을 불러와서 앱에 적용할 수 있습니다.
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
Future<String> getLanguagePreference() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
return prefs.getString('language') ?? 'en'; // 기본값은 영어
}
위의 코드는 저장된 언어 설정을 가져오는 함수입니다. 만약 저장된 설정이 없을 경우 기본값으로 영어를 반환합니다.
이제 사용자가 선택한 언어 설정을 shared_preferences를 통해 저장하고 불러오는 방법에 대해 알아보았습니다. 이를 통해 flutter 앱에서 사용자가 원하는 언어로 앱을 설정할 수 있습니다.