UMP SDK for TCF v2.2 is generating invalid TCString

390 views
Skip to first unread message

Gonçalo Silva (AppGeneration)

unread,
Nov 12, 2023, 1:32:07 AM11/12/23
to Google Mobile Ads SDK Developers

Hi,

Recently the UMP SDK for Android started showing a different form (for TCF v2.2) and generating TCStrings in a different format. For example, the string below was returned after clicking "Consent All" with the new form:

DP1BnkAP1BnkAEsACBENAaEoAP_gAEPgAB6YIbJB7D7FbSFCyHp3aLsUMAhXRtCAQoQgAASBAmABQAKQIBQCkkAQFAygBCACAAAAICZBIQAMCAgAAUABQAAAAAEEAAAABAAIIAAAgAEAAABIAAACAIACEAAIAAAAEAAAmQhAAIIAGAAAhAAAJAAAAAAAAAAAAgAAAAAAAAAAAAAIAAAAAQAAABBBpAPYXYraQoWQ8K5BZihAEKKNoQCFAEAACQIEgACABSBACAUggCAAEUAAQAAAAABASAJAABAAEAAAgAKAAAAAAAgAAAAAABBAAAAAAgAAAIAAAAQBAAAAABAAAAAgAAESEIABBAAwAAAAAABIAAAAAAAAAAAEAAAAAAAAAAAAABAAAAACAAA.cZgADmAAAAA

The thing is, the generated TCString does not respect the TCF specification and introduced crashes in our application code.

In fact, if use the string above in the official IAB TCF decoder (https://iabtcf.com/#/decode), it refuses to parse any information from it.


I reached out to the IAB team about this on a Github issue.

https://github.com/InteractiveAdvertisingBureau/iabtcf-es/issues/429

They said the following:

- the first character (representing TCF Core Version) is invalid. In both TCF v2.0 and v2.2, core version remains the same - the first base 64 character should be a C.

- under TCF v2.2, "policy version" is changed to 4.


Can you confirm the generated string does not respect the TCF specification? If so, when do you plan to fix this issue?

Mobile Ads SDK Forum Advisor

unread,
Nov 14, 2023, 2:30:39 AM11/14/23
to goncal...@appgeneration.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 a TCString issue in your application.

Kindly provide the below information for further investigation:
  • app ID 
  • ad unit ID
  • Sample project reproducing the issue
If the file(s) you are looking to share are less than 25mb in total you can attach them to this case on your next reply. If you are having trouble attaching your file to this case or if your file(s) are larger than 25mb, kindly provide requested information to us via reply privately to author option or using the steps below:

1. Navigate to
https://docs.google.com/forms/d/e/1FAIpQLSfkAiXMeYP-fw1W3Z-tT9uwmATEKO5X6S-th0gR2ezdKaaqfg/viewform?usp=pp_url&entry.400550049=Mobile+Ads+SDK&entry.460850823=5004Q00002qBrr5QAC&entry.80707362=00210244
2. Fill out all fields, and attach your file(s).
3. Please reply back to this thread when you have uploaded your file(s). Please do not share this link.
 
This message is in relation to case "ref:!00D1U01174p.!5004Q02qBrr5:ref"

Thanks,
 
Google Logo Mobile Ads SDK Team

 

Message has been deleted

Mobile Ads SDK Forum Advisor

unread,
Nov 15, 2023, 5:39:44 AM11/15/23
to r4nd...@gmail.com, google-adm...@googlegroups.com
Hi Andreas,

Thank you for getting back to us.

Please note that we couldn’t find any attachments shared by you. Could you please reshare the details through the link below?

Gonçalo Silva (AppGeneration)

unread,
Nov 15, 2023, 7:16:57 AM11/15/23
to Google Mobile Ads SDK Developers
Hi,

The app ID is irrelevant for this report, I already gave enough information to assert if there's an issue on the UMP form.
But I created a sample Android Studio project so that you can confirm this personally.
I couldn't attach it to the message, but you can download it here:

The issue is simple and can be reproduced with the AdMob sample app ID, or any publisher ID that has GDPR messaging enabled.
Steps for reproducing:
  1. Launch the sample app, then show the UMP consent form (must be the TCF v2.2 form).
  2. Select any kind of consent.
  3. The generated TCString is displayed immediately on the screen.

I ran the sample and it returned the TCString value below:
DP1SGQAP1SGQAEsACBENAaEoAP_gAEPgACiQINJB7D7FbSFCyHpzaLsAMAhXRsCAQoQAAASBAmABQAKQIAQCkkAQFASgBAACAAAAICZBIQAMCAgAAUABQAAAAAEEAAAABAAIIAAAgAEAAAAIAAAKAIAAEAAIAAAAEAAAmQhAAIIACAAAhAAAIAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAQQaQD2F2K2kKFkPCmQWYAQBCijYEAhQAAAAkCBIAAgAUgQAgFIIAgAAFAAAAAAAAAQEgCQAAQABAAAIACgAAAAAAIAAAAAAAQQAAAAAIAAAAAAAAUAQAAAAAQAAAAIAABEhCAAQQAEAAAAAAAQAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAgAA

According to my sources, the generated string doesn't respect the IAB TCF v2.2 standard.
The generated TCString should start with a "C" instead of a "D" character (TCF core version hasn't changed between v2.0 and v2.2), otherwise it can't be decoded using the official IAB TCF decode tools.
This happens for any kind of consent: Consent All, Deny All, or any variant of custom choices.

My source for the IAB TCF standard:

Other users that use your UMP form and complain about the same issue (TCString format from Google UMP is incorrect):

Is this enough information for your team to look into this?
It's obvious that it's not happening to just me, there are also other people affected by this.

Mobile Ads SDK Forum Advisor

unread,
Nov 16, 2023, 2:55:46 AM11/16/23
to goncal...@appgeneration.com, google-adm...@googlegroups.com

Hi Goncalo,

Thank you for getting back to us.

We regret the inconvenience caused. I understand that your query is related to Google's UMP consent policy. I would recommend reaching out to the Product support team as they are better equipped to address your concern. Please note that we can only assist with technical queries/concerns related to the Mobile Ads SDK.

Reply all
Reply to author
Forward
0 new messages