Skip to content

DecodingError: Unable to decode UsNatCoreSegment | Known Child Sensitive Data ConsentsΒ #84

@DmitryKoshmanFP

Description

@DmitryKoshmanFP

Hi!

Input GPP strings:

  • Opt Out: DBABL~BVQVAAAAAg
  • Not Opt Out: DBABL~BVQqAAAAAg

IABGpp Versions: Java 3.2.3, ES 3.1.6.

We want to use a Google US IAB states support. This will allow us to show a popup with privacy options for our users.

First of all, we tried parsing the generated gpp string using the Java version of this library, and on version 3.2.2, the output gpp string from UMP decodes successfully, just like on iabgpp.com last week.

But on version 3.2.3, it gives an error (DecodingError: Unable to decode UsNatCoreSegment 'BVQqAAAAAg'), as on iabgpp.com currently.

At the moment, the ES library can't parse these input strings either.

After some debugging I think that the cause of the problem is a new number of bits for the Known Child Sensitive Data Consents field. Backward compatibility is not implemented for the case when decoder received gpp string with shorter field. And the code tries to get a substring with 56 to 62 index when the original bitstring has only 60 characters.

  1. Does this work as intended and the UMP SDK just hasn't updated its encoder or is the problem in IAB decoder?
  2. Is there any versioning for such field breaking changes.
  3. Are there any planned fixes/updates related to this issue?

Metadata

Metadata

Assignees

No one assigned

    Labels

    reviewedFor library maintainers only. Indicates that this issue was reviewed.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions