[flutter] 플러터 get_storage를 사용하여 플러터 앱에서 사용자의 최근 검색 내역을 저장하는 방법을 알려주세요.
플러터 앱에서 사용자의 최근 검색 내역을 저장하려면 get_storage
패키지를 사용할 수 있습니다. 이 패키지를 이용하면 간단한 코드로 사용자의 데이터를 로컬에 저장할 수 있습니다. 이제 사용자가 검색한 내역을 저장하고 나중에 다시 불러올 수 있도록 하는 방법을 알아보겠습니다.
1. get_storage 패키지 추가하기
먼저, get_storage
패키지를 프로젝트에 추가해야 합니다. pubspec.yaml
파일에 다음과 같이 패키지를 추가합니다:
dependencies:
get_storage: ^2.0.3
그리고 터미널에서 아래 명령어를 실행하여 패키지를 다운로드 받습니다:
flutter pub get
2. 최근 검색 내역 저장하기
이제 get_storage
를 사용하여 최근 검색 내역을 저장해보겠습니다. 예를 들어, 사용자가 검색한 내역을 저장하는 클래스를 만들고, 이를 get_storage
를 이용하여 로컬에 저장합니다.
import 'package:get_storage/get_storage.dart';
class RecentSearchService {
final _recentSearchKey = 'recent_search';
Future<void> saveRecentSearch(String query) async {
final box = GetStorage();
List<String> recentSearches = box.read(_recentSearchKey) ?? [];
recentSearches.insert(0, query);
await box.write(_recentSearchKey, recentSearches.take(5).toList());
}
}
saveRecentSearch
메서드는 사용자가 검색한 내역을 받아와서 로컬에 저장합니다. 이때, 최근 5개의 검색 내역만 유지하기 위해 리스트를 최대 길이 5로 자릅니다.
3. 저장된 검색 내역 불러오기
이제 저장된 검색 내역을 불러와서 화면에 표시해보겠습니다.
import 'package:get_storage/get_storage.dart';
class RecentSearchService {
final _recentSearchKey = 'recent_search';
List<String> getRecentSearches() {
final box = GetStorage();
return box.read(_recentSearchKey) ?? [];
}
}
위의 코드에서 getRecentSearches
메서드는 저장된 검색 내역을 가져와서 반환합니다.
마무리
get_storage
패키지를 사용하여 플러터 앱에서 사용자의 최근 검색 내역을 저장하고 불러오는 방법에 대해 알아보았습니다. 이를 활용하여 사용자가 편리하게 이전 검색 내역을 확인할 수 있는 기능을 구현할 수 있을 것입니다.