[flutter] shared_preferences를 사용하여 앱에서 사용자가 입력한 검색 기록을 삭제하는 방법은?
어플리케이션에서 사용자의 검색 기록을 관리하고 싶을 때, shared_preferences 패키지를 사용하여 데이터를 저장하고, 삭제하는 것이 유용합니다. 이 튜토리얼에서는 Flutter에서 shared_preferences를 사용하여 사용자의 입력 검색 기록을 삭제하는 방법을 알아봅니다.
shared_preferences란?
shared_preferences
는 간단한 key-value 형태의 로컬 데이터를 안드로이드와 iOS의 SharedPreferences에 저장할 수 있도록 해주는 Flutter 패키지입니다.
사용자의 입력 검색 기록 삭제하기
먼저, shared_preferences
패키지를 pubspec.yaml
파일에 추가합니다:
dependencies:
flutter:
sdk: flutter
shared_preferences: ^2.0.8
이제 패키지를 가져와서 입력 검색 기록을 삭제하는 함수를 만들어보겠습니다:
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
class SearchHistoryManager {
static const _searchHistoryKey = 'searchHistory';
static Future<List<String>> getSearchHistory() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
return prefs.getStringList(_searchHistoryKey) ?? [];
}
static Future<void clearSearchHistory() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
prefs.remove(_searchHistoryKey);
}
}
위 코드에서 SearchHistoryManager
클래스에는 getSearchHistory
와 clearSearchHistory
두 가지 함수가 있습니다. getSearchHistory
함수는 사용자의 검색 기록을 가져오고, clearSearchHistory
함수는 검색 기록을 삭제합니다.
이제, 삭제 버튼이 있는 화면을 구성하여 clearSearchHistory
함수를 호출하면 해당 검색 기록들이 삭제됩니다:
FlatButton(
onPressed: () {
SearchHistoryManager.clearSearchHistory();
// 추가적인 상태 업데이트나 다른 동작 수행
},
child: Text('검색 기록 삭제'),
),
이와 같이 shared_preferences
패키지를 사용하여 Flutter 어플리케이션에서 사용자의 입력 검색 기록을 삭제할 수 있습니다.
더 자세한 내용은 shared_preferences 패키지 문서를 참고하세요.