feat(iap): remove_ads purchase/restore service + adsRemoved notifier

This commit is contained in:
2026-06-13 13:55:44 +09:00
parent e43fda8551
commit 6d2ffebb92
4 changed files with 116 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'providers.dart';
/// Whether the player owns the remove-ads entitlement. Seeded from the save
/// repository; [grant] flips it on (after a successful purchase/restore) and
/// persists.
class AdsRemovedNotifier extends Notifier<bool> {
@override
bool build() => ref.read(saveRepositoryProvider).adsRemoved;
Future<void> grant() async {
if (state) return;
await ref.read(saveRepositoryProvider).setAdsRemoved(true);
state = true;
}
}