Flutter에서 shared_preferences 패키지는 앱의 지속적인 상태를 유지하기 위해 사용자의 기기에 데이터를 저장할 수 있도록 도와줍니다. 사용자가 본 신문 기사의 조회수를 저장하기 위해 shared_preferences를 사용하는 방법을 살펴보겠습니다.
-
shared_preferences 패키지를 추가합니다.
pubspec.yaml
파일에 다음과 같이 패키지를 추가합니다:dependencies: shared_preferences: ^2.0.6
-
shared_preferences
패키지를 import 합니다:import 'package:shared_preferences/shared_preferences.dart';
-
신문 기사의 조회수를 저장할 메서드를 작성합니다:
Future<void> saveArticleViews(int views) async { SharedPreferences prefs = await SharedPreferences.getInstance(); prefs.setInt('article_views', views); }
saveArticleViews
메서드는SharedPreferences.getInstance()
를 사용하여SharedPreferences
객체를 얻은 후,setInt
메서드를 사용하여 ‘article_views’라는 키에 조회수를 저장합니다. -
신문 기사의 조회수를 불러오는 메서드를 작성합니다:
Future<int?> loadArticleViews() async { SharedPreferences prefs = await SharedPreferences.getInstance(); return prefs.getInt('article_views'); }
loadArticleViews
메서드는SharedPreferences.getInstance()
를 사용하여SharedPreferences
객체를 얻은 후,getInt
메서드를 사용하여 ‘article_views’ 키에 저장된 값을 가져옵니다. -
사용자가 신문 기사를 읽을 때마다 조회수를 업데이트합니다:
void updateArticleViews() async { int? views = await loadArticleViews(); if (views != null) { views += 1; } else { views = 1; } saveArticleViews(views); }
updateArticleViews
메서드는 현재 조회수를loadArticleViews
를 통해 가져온 후, 조회수를 1 증가시킵니다. 조회수가 null인 경우 1로 초기화한 다음,saveArticleViews
를 호출하여 조회수를 저장합니다. -
신문 기사의 조회수를 사용하는 예시:
void main() { updateArticleViews(); int? views = loadArticleViews(); print('조회수: $views'); }
메인 함수에서
updateArticleViews
를 호출하여 조회수를 업데이트하고,loadArticleViews
를 통해 조회수를 가져와 출력합니다.
이제 shared_preferences를 사용하여 사용자가 본 신문 기사의 조회수를 저장하는 방법을 알게되었습니다. 이 기능을 활용하여 사용자에게 더 편리한 경험을 제공할 수 있습니다.