shared_preferences
는 Flutter 앱에서 간단한 데이터를 영구적으로 저장하기 위한 플러그인입니다. 이를 사용하여 사용자가 본 텔레비전 프로그램 목록을 저장하는 방법을 알아보겠습니다.
1. shared_preferences
패키지 가져오기
먼저, shared_preferences
패키지를 사용할 수 있도록 프로젝트에 추가해야 합니다. pubspec.yaml
파일을 열고 shared_preferences
패키지를 의존성에 추가합니다. 아래와 같이 작성하세요:
dependencies:
flutter:
sdk: flutter
shared_preferences: ^2.0.8
변경 사항을 저장한 후, 터미널에서 flutter pub get
명령어를 실행하여 패키지를 가져옵니다.
2. SharedPreferences
인스턴스 생성하기
SharedPreferences
클래스는 shared_preferences
패키지에 포함되어 있습니다. 이 클래스의 인스턴스를 생성하여 사용자가 본 텔레비전 프로그램 목록을 저장할 수 있습니다. 아래와 같은 코드를 사용하여 인스턴스를 생성하세요:
import 'package:shared_preferences/shared_preferences.dart';
Future<void> saveWatchedPrograms(List<String> programs) async {
SharedPreferences sharedPreferences = await SharedPreferences.getInstance();
}
3. 텔레비전 프로그램 목록 저장하기
SharedPreferences
인스턴스를 사용하여 텔레비전 프로그램 목록을 저장할 수 있습니다. setStringList
메소드를 사용하여 목록을 저장하세요. 아래 코드를 saveWatchedPrograms
함수에 추가하세요:
Future<void> saveWatchedPrograms(List<String> programs) async {
SharedPreferences sharedPreferences = await SharedPreferences.getInstance();
await sharedPreferences.setStringList('watched_programs', programs);
}
위의 코드에서 watched_programs
는 저장할 목록의 키 이름이며, programs
는 사용자가 본 텔레비전 프로그램 목록입니다.
4. 저장된 목록 불러오기
이제 저장된 텔레비전 프로그램 목록을 불러올 수 있습니다. getStringList
메소드를 사용하여 불러와야 합니다. 아래와 같은 코드를 사용하여 저장된 프로그램 목록을 불러오세요:
Future<List<String>?> getWatchedPrograms() async {
SharedPreferences sharedPreferences = await SharedPreferences.getInstance();
return sharedPreferences.getStringList('watched_programs');
}
위의 코드에서 watched_programs
는 저장된 목록의 키 이름입니다. getWatchedPrograms
함수는 List<String>?
타입을 반환하여 저장된 목록이 없는 경우 null
을 반환할 수 있음을 나타냅니다.
요약
이제 shared_preferences
를 사용하여 사용자가 본 텔레비전 프로그램 목록을 저장하는 방법을 알게 되었습니다. 인스턴스를 생성하고 목록을 저장 및 불러오는 방법을 확인했습니다. 이를 기반으로 앱에 필요한 데이터를 영구적으로 저장하고 활용할 수 있습니다. 자세한 내용은 공식 문서를 참조하세요.