Google资金选择无效-googlefc.getConsentStatus始终返回UNKNOWN

问题描述

昨天,我正试图从Quantcast Choice迁移到Google资助选择,以实现GDPR / EU CMP的目的。由于某种原因,在提示您同意并单击消息对话框上的“同意”后,方法googlefc.getConsentStatus()始终返回UNKNowN(0)。

经过进一步调查,似乎无论与同意消息进行哪种交互(直接单击同意按钮,拒绝同意按钮,选择单个供应商等),getConsentStatus()始终返回{{1 }}。

任何人都知道发生了什么事吗?我想念什么吗?

我正在使用的相关代码

UNKNowN

window.googlefc.callbackQueue.push({ 'CONSENT_DATA_READY': function () { let consentStatus = window.googlefc.getConsentStatus(); vm.log("CM_CONSENT_STATUS",consentStatus); switch (consentStatus) { case window.googlefc.ConsentStatusEnum.CONSENTED_TO_PERSONALIZED_ADS: case window.googlefc.ConsentStatusEnum.CONSENT_NOT_required: vm.allow(true); break; case window.googlefc.ConsentStatusEnum.CONSENTED_TO_NON_PERSONALIZED_ADS: vm.reject(true); break; case window.googlefc.ConsentStatusEnum.UNKNowN: case window.googlefc.ConsentStatusEnum.NO_CONSENT: break; } } }); 总是返回window.googlefc.getConsentStatus()

解决方法

这实际上似乎是预期的行为,因为“如果使用IAB TCF v2框架,“ window.googlefc.getConsentStatus()将始终返回window.googlefc.ConsentStatusEnum.UNKNOWN”。我遇到了同样的问题,并在reddit上跟踪了答案:https://www.reddit.com/r/adops/comments/ifh6n9/anybody_using_google_funding_choices_for_gdpr_cmp/

尽管我没有找到解决办法来使googlefc.getConsentStatus()函数正常工作或与之等效,但是我使我的CMP模态正常工作(您无需使用此代码即可工作。唯一的您真正要做的是将“资金选择”粘贴到顶部,而不用(adsbygoogle = window.adsbygoogle || [])。pauseAdRequests = 1停止广告请求;或者其他任何原因,因为资金选择会自己暂停广告-在获得同意后,无需重新加载即可启动它们)