Android AdMob - 请求欧洲用户同意

Android AdMob - Requesting Consent from European Users

我根据 Android + AdMob 实施了 欧盟用户同意政策this article.

问题UserMessagingPlatform 在真实设备(使用 HashedId)或模拟器上 onConsentInfoUpdateFailure 总是失败。

错误来自服务器的无效响应:无法读取发布者的帐户配置;稍后再试。

我启用了调试设置:

ConsentDebugSettings debugSettings = new ConsentDebugSettings.Builder(activity)
        .setDebugGeography(ConsentDebugSettings.DebugGeography.DEBUG_GEOGRAPHY_EEA)
        //.addTestDeviceHashedId("CC3EBF623628DAA1E3AD2124AE690FBD")
        .build();

ConsentRequestParameters params = new ConsentRequestParameters.Builder()
        .setTagForUnderAgeOfConsent(false)
        .setConsentDebugSettings(debugSettings)
        .build();

请告诉我失败的原因?也许我应该考虑改用 Legacy version

您需要按照此处所述设置 Funding Choices 帐户 https://support.google.com/admanager/answer/9770970

我第一次设置后就出现了这个反应。我通过更改 Admob 本身的一些设置解决了这个问题。

Google Admob -> 隐私和消息传递 -> GDPR(卡片)

创建一条实际显示给用户的消息(consent/do 而不是 consent/manage 选项等),我相信这是出现此错误时实际未发现的内容。有许多切换按钮可用于确定要显示的消息(个性化 ads/basic ads/etc。)。

还可以对广告进行年龄限制,如果您要发布面向儿童的应用,这将非常有用。