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

AdMob测试横幅广告在模拟器及小米设备正常显示,Galaxy S10不显示的问题排查

Galaxy S10(Android 11)Flutter AdMob横幅广告不显示的解决办法

问题根源

这种特定真机上的广告显示差异,大多是因为测试设备未正确配置,或者目标设备的系统设置、Google服务版本限制了AdMob广告加载。

具体解决步骤

1. 配置测试设备ID(关键)

根据你拿到的设备ID提示,在Flutter项目里完成测试设备配置,避免AdMob因非测试设备限制广告展示:

import 'package:google_mobile_ads/google_mobile_ads.dart';

void initAdMob() async {
  await MobileAds.instance.initialize();
  final config = RequestConfiguration(
    testDeviceIds: ['0E9819CC3AEA7F45DCB97C80DCE78CF6'],
  );
  MobileAds.instance.updateRequestConfiguration(config);
}

记得在main()函数里先调用initAdMob(),确保启动时就完成配置。

2. 检查Galaxy S10的系统设置

  • 关闭电池优化:去「设置 > 电池和设备维护 > 电池 > 后台使用限制」,把你的应用设为「不限制」,防止AdMob相关进程被系统后台回收。
  • 确认网络权限:检查android/app/src/main/AndroidManifest.xml里是否有互联网权限,Flutter默认会加,但以防万一:
<uses-permission android:name="android.permission.INTERNET"/>
  • 更新Google Play服务:Galaxy S10的Google服务版本可能偏旧,打开Google Play商店搜索「Google Play服务」,更新到最新版再测试。

3. 排查区域与账号限制

  • 部分地区AdMob测试广告投放有限制,临时把设备语言/区域改成英文(美国)试试。
  • 登录AdMob后台确认账号状态正常,没有被限流或警告。

真机调试技巧

  • 用Logcat看日志:Wi-Fi连接设备后,在Android Studio的Logcat里过滤Ads关键词,能看到广告加载的详细错误信息——比如错误码3是无填充,错误码0是请求成功但显示失败,根据错误码就能精准定位问题。
  • 开启AdMob调试日志:在初始化代码里加:
MobileAds.instance.setAppMuted(false);
MobileAds.instance.setAppVolume(1.0);

同时在AndroidManifest.xml里加:

<meta-data android:name="com.google.android.gms.ads.DEBUG_LOG_ENABLED" android:value="true"/>

这样能看到更完整的广告请求流程日志,方便排查。

内容的提问来源于stack exchange,提问作者Badr Erraji

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 14:41:25