-
Notifications
You must be signed in to change notification settings - Fork 894
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Analytics Consent not sent on update #8210
Analytics Consent not sent on update #8210
Comments
I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight. |
* Fix call to consent update after integrating rest operator for gtag wrapper.
@megamisan, thanks for reaching out to us. I was able to replicate the behavior you've mentioned. Also, thanks for sending a PR for a possible fix. I'll raise this to our engineering team or bring someone here that can provide more context about it. I’ll update this thread if I have any information to share. |
We wrap the gtag function internally and pass setConsent calls through the wrapper function, which in turn calls the gtag SDK. While we invoke the wrapped function with parameters identical to those listed in the gtag functions, we were dropping the update string on the floor inside the wrapped function. Additionally, we were feeding the consentSettings as the second parameter to gag, which should have been the update string parameter. This ended up clobbering the data, and not send update commands properly. This change fixes our wrappedGtag func impl to properly pass update to gtag, along with the provided ConsentSettings argument. Closes #8210
This fix should be in our next release. If you find that there's still an issue, or a new one, then please open a new support issue and feel free to link to this issue for context. Thanks! |
We wrap the gtag function internally and pass setConsent calls through the wrapper function, which in turn calls the gtag SDK. While we invoke the wrapped function with parameters identical to those listed in the gtag functions, we were dropping the update string on the floor inside the wrapped function. Additionally, we were feeding the consentSettings as the second parameter to gag, which should have been the update string parameter. This ended up clobbering the data, and not send update commands properly. This change fixes our wrappedGtag func impl to properly pass update to gtag, along with the provided ConsentSettings argument. Closes #8210
Operating System
Windows 11 23H2
Browser Version
Edge 124.0.2478.51
Firebase SDK Version
10.11.0
Firebase SDK Product:
Analytics, AppCheck, Auth, Firestore, Functions, Storage
Describe your project's tooling
Vue.js app.
Describe the problem
I'm trying to get analytics to work with consent banner and sending advanced consent information with the
setConsent
method.Steps and code to reproduce issue
In the projet, initialize Firebase first. I consider
app
to be a constant containing the firebase application instance in the following snippet:Using Tag Assitant, I can see the tag events. However, I get this result:
The granted value is missing and there is strange numbered items.
Doing a some step-by-step debugging, I found the call to gtag. The third parameter which should be the
ConsentSettings
(see Set up consent mode on websites is set to the second parameterupdate
instead of the third.The
setConsent
method code is here packages/analytics/src/api.ts#L768.It trigger the call to the gtagWrapper function with this line:
The
wrappedGtagFunction
is an instance of thegtagWrapper
function found in packages/analytics/src/helpers.ts#L279.When the method is called before initialization of
gtag
, the call is made correctly.setContent
sends the settings to_setConsentDefaultForInit
and the packages/analytics/src/initialize-analytics.t:_initializeAnalytics
s#L129 function use these settings correctly.I see two possible fixes:
'update'
parameter insetConsent
, thus the diff:I recommend the first option.
Original commits:
Some checks failed for this commit but where not fixed. This test packages/analytics/src/api.test.ts#L143 should have detected the issue.
The text was updated successfully, but these errors were encountered: