Add Open Measurement impression tracking #244
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We have researched the Open Measurement SDK's behavior for impression tracking (
burl
) in the PUC.OM SDK JS script contains the public methods that are available in all versions and are not obfuscated. We have researched different versions of AppLovin, GAM, and AdMob. List of these methods:
We can subscribe to all these methods using the proxy method. For receiving them we should use
window.omidBridge.<method_name>
.We have tried to subscribe to
publishImpressionEvent
, but it works too fast and we can't handle it. So we decided to subscribe to the geometry change called by thesetNativeViewHierarchy
method. But this method can be called when a view is not on a screen or is not visible, so we need to check this method's parameter. Parameter options:viewIsNotOnScreen
.viewIsNotVisible
.