Pausing IAMs dismisses any currently showing IAM #2191
Merged
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.
Description
One Line Summary
Pausing IAMs dismisses any currently showing IAM
Details
Detects if there is currently an IAM being displayed when paused is set to true. If so we dismiss the IAM.
Motivation
Add the ability to programmatically close an IAM. This could be used in response to the IAM click listener, or some other event happening in the application.
Scope
In-App Messages
Testing
Manual testing
Tested pausing IAM from the IAM Lifecycle Listener onDidDisplay event. IAM is dismissed, remaining lifecycle callback listeners fire, and queued IAMs don't show.
Tested on Android Studio 2023.3 with a fresh install of the OneSignal example app on a Pixel 8 with Android 14.
Affected code checklist
Checklist
Overview
Testing
Final pass
This change is