Package com.inmobi.ads.rendering
Class SafeEngagementSignalsCallback
-
- All Implemented Interfaces:
-
androidx.browser.customtabs.EngagementSignalsCallback
public class SafeEngagementSignalsCallback implements EngagementSignalsCallback
Safe wrapper for EngagementSignalsCallback that handles null Bundle parameters gracefully.
This class addresses the issue where CustomTabs framework may pass null extras despite the @NonNull contract in androidx.browser:1.8.0 EngagementSignalsCallback interface.
Using Java instead of Kotlin avoids Kotlin's automatic null-check code generation, allowing us to handle null parameters defensively.
Fixes: Issues #5, #12, #14 - NullPointerException in CustomTabs callbacks (460 crashes)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public interfaceSafeEngagementSignalsCallback.OnVerticalScrollListenerListener interfaces for delegation
public interfaceSafeEngagementSignalsCallback.OnScrollPercentageListenerpublic interfaceSafeEngagementSignalsCallback.OnSessionEndedListener
-
Constructor Summary
Constructors Constructor Description SafeEngagementSignalsCallback(SafeEngagementSignalsCallback.OnVerticalScrollListener verticalScrollListener, SafeEngagementSignalsCallback.OnScrollPercentageListener scrollPercentageListener, SafeEngagementSignalsCallback.OnSessionEndedListener sessionEndedListener)
-
Method Summary
Modifier and Type Method Description voidonVerticalScrollEvent(boolean isDirectionUp, @Nullable() Bundle extras)voidonGreatestScrollPercentageIncreased(int scrollPercentage, @Nullable() Bundle extras)voidonSessionEnded(boolean didUserInteract, @Nullable() Bundle extras)-
-
Constructor Detail
-
SafeEngagementSignalsCallback
SafeEngagementSignalsCallback(SafeEngagementSignalsCallback.OnVerticalScrollListener verticalScrollListener, SafeEngagementSignalsCallback.OnScrollPercentageListener scrollPercentageListener, SafeEngagementSignalsCallback.OnSessionEndedListener sessionEndedListener)
-
-
Method Detail
-
onVerticalScrollEvent
void onVerticalScrollEvent(boolean isDirectionUp, @Nullable() Bundle extras)
-
onGreatestScrollPercentageIncreased
void onGreatestScrollPercentageIncreased(int scrollPercentage, @Nullable() Bundle extras)
-
onSessionEnded
void onSessionEnded(boolean didUserInteract, @Nullable() Bundle extras)
-
-
-
-