[flutter] shared_preferences를 이용하여 사용자가 앱 내에서 마지막으로 읽은 게시물을 저장하는 방법은?

앱 내에서 사용자가 마지막으로 읽은 게시물을 저장하려면 shared_preferences 패키지를 사용할 수 있습니다. shared_preferences는 키-값 형식으로 데이터를 간단하게 로컬에 저장할 수 있는 패키지입니다.

이를 위해 먼저 앱에 shared_preferences 패키지를 추가해야 합니다. 이 패키지를 사용하여 사용자가 마지막으로 읽은 게시물의 ID나 다른 필요한 정보를 저장할 수 있습니다.

아래는 shared_preferences를 사용하여 사용자가 마지막으로 읽은 게시물의 ID를 저장하고 불러오는 간단한 예제입니다.

import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';

class LastReadPostStorage {
  static const String _lastReadPostKey = 'lastReadPost';

  Future<void> saveLastReadPost(int postId) async {
    SharedPreferences prefs = await SharedPreferences.getInstance();
    await prefs.setInt(_lastReadPostKey, postId);
  }

  Future<int> getLastReadPost() async {
    SharedPreferences prefs = await SharedPreferences.getInstance();
    return prefs.getInt(_lastReadPostKey) ?? 0; // 기본값은 0으로 설정
  }
}

// 사용 예시
void main() async {
  LastReadPostStorage postStorage = LastReadPostStorage();
  // 마지막으로 읽은 게시물 ID 저장
  await postStorage.saveLastReadPost(123);
  // 마지막으로 읽은 게시물 ID 불러오기
  int lastReadPostId = await postStorage.getLastReadPost();
  print('마지막으로 읽은 게시물 ID: $lastReadPostId');
}

이 예제는 LastReadPostStorage 클래스를 사용하여 shared_preferences를 이용해 마지막으로 읽은 게시물의 ID를 저장하고 불러오는 방법을 보여줍니다. 앱에서 이와 유사한 방식으로 사용자가 읽은 게시물의 상태를 저장하고 나중에 불러와 사용할 수 있습니다.