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

如何根据UMP用户同意状态配置AdMob个性化/非个性化广告

不需要额外在应用内新增按钮让用户选择广告类型,UMP SDK已经内置了用户同意选择的获取能力,你之前仅调用了判断同意流程是否完成的接口,遗漏了获取具体选择结果的API。

具体实现逻辑

  1. 优先推荐使用UMP的自动适配能力
    按照官方集成要求完成UMP同意流程后再初始化Google Mobile Ads SDK,SDK会自动读取用户的同意状态,自动调整返回的广告类型,无需你手动配置npa参数,也不需要额外获取用户的选择结果。

  2. 如果你确实需要手动控制广告类型,可通过以下方式获取用户选择:
    UMP符合IAB TCF规范,用户的同意结果会存储在应用本地的SharedPreferences中,你可以读取对应字段判断用户是否同意个性化广告:

  • TCF规范中,个性化广告对应目的ID为3,你可以调用ConsentInformation.getInstance(context).isPurposeConsentGiven(3)获取该目的的同意状态,返回false则代表用户不同意个性化广告,需要配置npa=1参数。

手动配置广告请求的示例代码如下:

Bundle extras = new Bundle();
// 用户不同意个性化广告时传入npa=1
if (!ConsentInformation.getInstance(context).isPurposeConsentGiven(3)) {
    extras.putString("npa", "1");
}

AdRequest request = new AdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter.class, extras)
    .build();

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 07:15:01