[flutter] shared_preferences 를 사용하여 사용자가 선택한 대화 상대의 목록을 저장하는 방법은 무엇인가요?
-
먼저, shared_preferences 패키지를 프로젝트에 추가해야 합니다. pubspec.yaml 파일에 다음과 같이 dependencies 섹션에 해당 패키지를 추가합니다:
dependencies: flutter: sdk: flutter shared_preferences: ^2.0.0
-
패키지를 추가한 후,
import
문을 사용하여 shared_preferences 패키지를 가져옵니다:import 'package:shared_preferences/shared_preferences.dart';
-
사용자가 대화 상대를 선택하고 저장해야 하는 시나리오에서, 사용자가 선택한 대화 상대의 목록을 List 형태로 생성합니다:
List<String> selectedContacts = ['John', 'Jane', 'Max'];
-
이제 SharedPreferences 인스턴스를 생성하고 사용자가 선택한 대화 상대의 목록을 저장하는 코드를 작성합니다:
SharedPreferences prefs = await SharedPreferences.getInstance(); await prefs.setStringList('selectedContacts', selectedContacts);
위의 코드에서 ‘selectedContacts’는 저장할 데이터의 키입니다.
-
사용자가 앱을 다시 실행할 때, 저장된 데이터를 가져와야 합니다. SharedPreferences에서 데이터를 가져오는 코드는 다음과 같습니다:
SharedPreferences prefs = await SharedPreferences.getInstance(); List<String> selectedContacts = prefs.getStringList('selectedContacts') ?? [];
위의 코드에서
getStringList
메서드는 해당 키에 해당하는 값을 가져오는 역할을 합니다. 값이 없는 경우, 빈 리스트로 초기화하도록 해야 합니다.
이렇게 하면 사용자가 선택한 대화 상대의 목록을 shared_preferences를 사용하여 저장하고 불러올 수 있습니다. 이전에 저장한 데이터를 가져오기 위해서는 getStringList
메서드를 사용하고, 새로운 데이터를 저장하기 위해서는 setStringList
메서드를 사용합니다.
참고 문서: