-
Notifications
You must be signed in to change notification settings - Fork 62
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
feat: update isLimitAdTracking logic for Android 13 #233
Conversation
7a1caf3
to
85c25b5
Compare
@@ -1213,7 +1198,7 @@ public void setIdentityApiContext(String context) { | |||
public String getPreviousAdId() { | |||
MPUtility.AdIdInfo adInfo = MPUtility.getAdIdInfo(mContext); | |||
String currentAdId = null; | |||
if (adInfo != null) { | |||
if (adInfo != null && !adInfo.isLimitAdTrackingEnabled) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
so reading this code - this is what could happen:
- user has limit ad tracking (LAT) false, and we persist the Ad ID (via
setPreviousAdId
below) - they then disable limit ad tracking
- this method is called - and we skip over this block with your change - so it will return the previous Ad ID, which we should no longer be using
So that makes me nervous. Do we need these methods at all? Why are we storing the ad ID? If these methods are used to understand if the Ad ID changed, then I would think you'd want this method to return all zeroes or null when LAT is true, so that whatever caller knows that the Ad ID changed from something to null.
Are we triggering a modify call to identity based on these methods? If we are, i'd expect that modify call to remove the Ad ID from the user.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@samdozor in AppStateManager.java
updated the logic to allow it to send at least one modify call if currentGoogleAdId is null
85c25b5
to
75f1077
Compare
75f1077
to
c8e28c8
Compare
c8e28c8
to
cbab0a0
Compare
bc0cda0
to
e6d8616
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good 👍
9f4b0a1
to
8035c59
Compare
SonarCloud Quality Gate failed. |
## [5.46.0](v5.45.2...v5.46.0) (2022-10-14) ### Features * Bump up compile SDK to 33 and ktlint version ([#245](#245)) ([67dc378](67dc378)) * Port android core module java instrumented and unit tests to kotlin - phase1 ([#249](#249)) ([62e4254](62e4254)) * Port android core module java instrumented and unit tests to kotlin (p2) ([#250](#250)) ([23434d2](23434d2)) * Ported Android Kit Base tests to Kotlin ([#253](#253)) ([c21dd71](c21dd71)) * update isLimitAdTracking logic for Android 13 ([#233](#233)) ([f7b9284](f7b9284)) ### Bug Fixes * Convert MParticleTest.java file to kotlin and fix failing test ([#251](#251)) ([604c1b9](604c1b9)) ### Documentation * Update copy in readme for android 13 ([#255](#255)) ([c9a648d](c9a648d)) ### Updates & Maintenance * add in missing inherit in rebase job ([2197610](2197610)) * Update submodules ([7bdaf63](7bdaf63)) * Update to kotlin 1.7.20 ([#247](#247)) ([c9e1729](c9e1729))
🎉 This PR is included in version 5.46.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
Instructions
Summary
null
for GAID when LAT in enabledTesting Plan
Reference Issue