BUG: UMP 2.1.0 consent for ads is always true even when "do not consent" is selected

1,318 views
Skip to first unread message

Adam

unread,
Oct 2, 2023, 10:50:59 AM10/2/23
to Google Mobile Ads SDK Developers
I have implemented UMP following the instructions at https://developers.google.com/admob/android/privacy

The form is displayed correctly and I can choose to consent or do not consent, but whatever option I choose consentInformation.getConsentStatus() is always 3 and consentInformation.canRequestAds() is always true.

Before displaying the form getConsentStatus() returns 0 and canRequestAds() is false.
Message has been deleted

Andreas

unread,
Oct 3, 2023, 9:39:17 AM10/3/23
to Google Mobile Ads SDK Developers
The UMP SDK does not actually offer the functionality you and many of us are looking for.

getConsentStatus() returns values according to whether the consent dialog should be presented (if REQUIRED) or not (if NOT_REQUIRED), or whether it already has been presented (if OBTAINED). A consent status is considered to be "obtained" even if the user did not opt in to anything.

Similarly, canRequestAds() really just checks if the consent dialog has been presented or is not necessary in the first place ("the app has completed the necessary steps for gathering updated user consent"), but does not indicate whether requesting ads will ever be successful.

There is no functionality in the whole SDK to check if the current consent configuration is "enough" for ads to be loaded and presented to the user. If you want to do that - and you most likely want to, because that is the single most useful thing to do after presenting the consent dialog - you are left alone by Google. You can try something along these lines.

Mobile Ads SDK Forum Advisor

unread,
Oct 4, 2023, 7:36:57 AM10/4/23
to adam....@gmail.com, google-adm...@googlegroups.com

Hi,

Thank you for contacting the Mobile Ads SDK Support team.

Upon reviewing your concern, I understand that you are facing an issue with UMP implementation. 

  • As per the documentation  if user consent is obtained (i.e., consent or do not consent), Constant Value: 3 is received. 
  • For consentInformation.canRequestAds() please refer to canRequestAds.

Please reach out to us, if you need any further assistance.

This message is in relation to case "ref:_00D1U1174p._5004Q2p37br:ref"

Thanks,
 
Google Logo Mobile Ads SDK Team


Mobile Ads SDK Forum Advisor

unread,
Oct 5, 2023, 7:14:45 AM10/5/23
to ndrs...@gmail.com, google-adm...@googlegroups.com

Hi,

Thank you for contacting the Mobile Ads SDK Support team.

Upon reviewing your concern, I understand that you are facing an issue with UMP implementation. 

  • As per the documentation  if user consent is obtained (i.e., consent or do not consent), Constant Value: 3 is received. 
  • For consentInformation.canRequestAds() please refer to canRequestAds.

Please reach out to us, if you need any further assistance.
 

This message is in relation to case "ref:_00D1U1174p._5004Q2p3Sc6:ref"

Andreas

unread,
Oct 5, 2023, 7:48:13 AM10/5/23
to Google Mobile Ads SDK Developers
I did not "contact the Mobile Ads SDK Support team", but answered the question of another user before you did, because I know how useless your answers typically are. Case in point: you replying with the exact same canned response twice in a row in this thread, which does not actually answer the question at all.

If you wouldn't just get served individual messages without context in a ticket system separate from the actual Google Group that we are dealing with on our end, you would know how out of place and borderline insane some of your replies must appear to everyone else visiting this group. So, please, for the love of whatever means something to you, please take the time to visit https://groups.google.com/g/google-admob-ads-sdk before picking yet another canned response. If there's any sort of supervisor or team leader available to you in whatever call center you are working, please forward this message to them and let them know that your whole "support" structure does not achieve any sensible goal and is in the process of imploding on itself, probably taking with it a good chunk of Google's second-biggest revenue stream.

unknown unknown

unread,
Jan 11, 2024, 10:19:24 AM1/11/24
to Google Mobile Ads SDK Developers
Today suddenly we got the same issue.
We have implemented UMP following the instructions for iOS and Android platform.
Then we tested this code several times before (six or five days ago) and it worked as we expected - if the user selected "do not consent" getConsentStatus() returns OBTAINED but canRequestAds() returns false, because user selected "do not consent".

But today we tested this code again and today in that case canRequestAds() always returns true.
At the beginning we got state REQUIRED (using VPN location as UK (without any debug settings)), when the dialog is shown we select "do not consent", state changed to OBTAINED but this time canRequestAds() always returns true (for both platform iOS and Android)
But why? What happened? Is this a problem or not?
Why the dialog is REQUIRED if the result is always true regardless of what the user chooses?

Mobile Ads SDK Forum Advisor

unread,
Jan 11, 2024, 10:59:13 AM1/11/24
to ensu...@gmail.com, google-adm...@googlegroups.com

Hi,

Thank you for reaching out to us.

I will check with our team regarding your query and one of my team members will reach out to you once we have an update on this. Meanwhile, your patience is highly appreciated.

This message is in relation to case "ref:!00D1U01174p.!5004Q02p3Sc6:ref"


Thanks,
 
Google Logo Mobile Ads SDK Team

 

Mobile Ads SDK Forum Advisor

unread,
Jan 11, 2024, 8:19:37 PM1/11/24
to ensu...@gmail.com, google-adm...@googlegroups.com
Hi ensunsss,

My name is Nick and I will be helping you with the UMP SDK question.

In short, the Ump SDK deals with consent management only, and does not provide ad service status.

Serving status is a complicated question because users which have not granted consent may still be served limited ads.

If you have any other concerns, please let me know.
Nick
 

ref:!00D1U01174p.!5004Q02p3Sc6:ref

unknown unknown

unread,
Jan 12, 2024, 4:06:15 AM1/12/24
to Google Mobile Ads SDK Developers
Hello, Thank you for the answer.

We need to use UMP to get user`s consent for IronSource`s ads.
As I already mentioned, several days ago if we selected "do not consent" getConsentStatus() returns OBTAINED and canRequestAds() returns false. And in this case string IABTCF_AddtlConsent did not contain any vendors codes (especially code for IronSource "2878" as documented in https://developers.is.com/ironsource-mobile/general/how-to-share-consent-with-gdpr-cmp/#step-1). So if user did not consent, for our IronSource integration consent was false. (canRequestAds() returned false and there was no code for IronSource in the string IABTCF_AddtlConsent)

But now if we press "do not consent" canRequestAds() returns true and code "2878" for IronSource is also present in the string IABTCF_AddtlConsent.
The user did not consent with our GDPR list (which contains IronSource) but still gets consent true because canRequestAds() returns true and the code for IronSource is present.
Is it normal? 

Mobile Ads SDK Forum Advisor

unread,
Jan 12, 2024, 2:14:16 PM1/12/24
to ensu...@gmail.com, google-adm...@googlegroups.com

Hello,

For your Additional Consent observations, this is normal. The AC string also contains a list of disclosed vendors. Just checking the entire string is not a viable solution. From our help center article:

"The AC string 2~1.35.41.101~dv.9.21.81 means that the user has consented to ATPs with IDs 13541 and 101, ATPs with IDs 921, and 81 have been disclosed to the user and the string is created using the format defined in the v2 specification."

Querying contains to check if the ID is in the string may not mean consent. Please see the AC spec and use that to determine how to check for consented vendors. 

As for your observations for canRequestAds, canRequestAds() returns true once the consent gathering process has completed, regardless if the user clicked "consent" or "do not consent". 

Thanks,
Justin



ref:!00D1U01174p.!5004Q02p3Sc6:ref

unknown unknown

unread,
Jan 15, 2024, 11:38:12 PM1/15/24
to Google Mobile Ads SDK Developers
Ok. I See. 
If the code "2878" is in "2~" part of string then consent for IronSource should be true. If the code is in "~dv." part then consent should be false. Right? 
Thank you for your answers and support!

Mobile Ads SDK Forum Advisor

unread,
Jan 16, 2024, 11:18:09 AM1/16/24
to ensu...@gmail.com, google-adm...@googlegroups.com
Hello,

I would confirm with IronSource to be certain but from my understanding this is correct.
Reply all
Reply to author
Forward
0 new messages