You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter实现仅当变量被3整除时展示Admob开屏广告

每3次启动展示一次Admob开屏广告的实现方案

1. 添加本地存储依赖

使用shared_preferences持久化记录启动次数,在pubspec.yaml中添加依赖:

dependencies:
  shared_preferences: ^2.2.2

执行flutter pub get完成依赖安装。

2. 实现启动次数统计方法

创建方法读取并更新启动次数,确保应用重启后数据不丢失:

import 'package:shared_preferences/shared_preferences.dart';

Future<int> getAndUpdateLaunchCount() async {
  final prefs = await SharedPreferences.getInstance();
  int launchCount = prefs.getInt('app_launch_count') ?? 0;
  launchCount++;
  await prefs.setInt('app_launch_count', launchCount);
  return launchCount;
}

3. 修改广告展示逻辑

在原有开屏广告初始化代码中加入整除判断,仅满足条件时加载展示广告:

void setupAppOpenAd() async {
  int currentLaunchCount = await getAndUpdateLaunchCount();
  
  // 仅当启动次数为3的倍数时展示广告
  if (currentLaunchCount % 3 == 0) {
    // 执行你已实现的开屏广告加载与展示逻辑
    // 例:loadAppOpenAd(); showAppOpenAd();
  }
}

4. 关键注意点

  • 确保setupAppOpenAd在应用启动早期调用(比如main函数内、首页的initState中,与原有广告初始化位置保持一致)
  • 若需重置计数,可添加如下方法:
Future<void> resetLaunchCounter() async {
  final prefs = await SharedPreferences.getInstance();
  await prefs.setInt('app_launch_count', 0);
}

内容的提问来源于stack exchange,提问作者Faizan Abbas Bangash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 19:35:15