task: sync react-native ← Android corev8.4.1 + iOS 7.8.1 (2026-08-11) - #511
Open
clevertap-wrapper-sync[bot] wants to merge 1 commit into
Open
task: sync react-native ← Android corev8.4.1 + iOS 7.8.1 (2026-08-11)#511clevertap-wrapper-sync[bot] wants to merge 1 commit into
clevertap-wrapper-sync[bot] wants to merge 1 commit into
Conversation
Android: core 8.4.1 iOS: core 7.8.1 Auto-generated by clevertap-wrapper-sync via clevertap-wrapper-tooling. Co-Authored-By: Claude <noreply@anthropic.com>
clevertap-wrapper-sync
Bot
requested review from
akashvercetti and
piyush-kukadiya
as code owners
August 11, 2026 15:20
clevertap-wrapper-sync
Bot
requested review from
CTLalit,
Sonal-Kachare and
nishant-clevertap
as code owners
August 11, 2026 15:20
clevertap-wrapper-sync
Bot
requested a review
from deeksha-rgb
as a code owner
August 11, 2026 15:20
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
Comment on lines
+9
to
+11
| * Spin-the-Wheel and Scratch Card gamified in-app templates — available to campaigns built with the Advanced InApp Builder, no app-side wiring needed. | ||
| * Per-element click attribution for in-apps — the `Notification Clicked` event now records which element of the in-app was tapped, across all templates. Swipe-to-dismiss is now configurable per campaign and is tracked as a `Notification Clicked` event too. | ||
| * Accessibility improvements across in-apps and App Inbox — dynamic text scaling, screen-reader announcements, content descriptions for close buttons/images/media controls, a larger 48dp dismiss tap target, and corrected carousel navigation for TalkBack. |
Contributor
There was a problem hiding this comment.
@piyush-kukadiya I think these changelog can be added in Android and iOS section below to skip redundant changelog, we can update it later in skill
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Sync react-native ← Android corev8.4.1 + iOS 7.8.1 (2026-08-11)
🤖 Auto-generated by
clevertap-wrapper-syncviaclevertap-wrapper-tooling.dismissPipInApp — iOS bridge(native v8.4.1) — flagged by the Android sync because no iOSRCT_EXPORT_METHODexisted yet; the iOS sync that ran afterwards added it atios/CleverTapReact/CleverTapReact.mm:963, so verify it landed.App Inbox never persisted on Android 6.0–10 (API 23–29)(native v8.4.0) — critical native fix affecting every App Inbox account on RN v4.1.0/v4.2.0; no API change, recorded in CHANGELOG Bug Fixes.PIP in-app video crash on Android 6.0 (AbstractMethodError)(native v8.4.0) — native runtime fix for apps with minSdkVersion below 24; no symbol change.App Inbox pull-to-refresh did not repaint the message list(native v8.4.1) — fix inside the SDK's own inbox view; no API surface change.clevertap_push_templates_sdk 2.4.0 → 2.5.0 in the native version catalog(native v8.4.1) — internal to the Android SDK's version catalog; not a pin this wrapper carries, so nothing propagated.Spin-the-Wheel and Scratch Card in-app templates(native v7.8.1) — campaign-side templates rendering through the existing in-app pipeline; no new public API in the diff.Split of Clicks — per-element in-app click attribution(native v7.8.0) — added symbols are all in private headers; reviewer may want to confirm whetherCleverTapInAppNotificationDismissedlisteners now receive extra payload keys worth documenting.Accessibility improvements for in-apps and App Inbox(native v7.8.0) — VoiceOver labels, larger dismiss tap area, image content descriptions; no public API change to bridge.Version pins bumped
clevertap-android-sdk8.3.0 → 8.4.1 (android/build.gradle,docs/install.md)CleverTap-iOS-SDK7.7.1 → 7.8.1 (clevertap-react-native.podspec)Release prep
dismissPipInApp) and a native pin bump; nothing removed, no required parameter added, minSdk unchanged at 23)docs/usage.md— entry added for:dismissPipInApp(iOS sync dropped the "Supported on Android." qualifier)docs/install.md— Android pin bumped to 8.4.1dismissPipInApp(Example/app/constants.js,Example/app/app-utils.js,Example/app/App.js)Android sync
Surfaced (1)
CleverTap.dismissPipInApp()— new no-arg void method onCleverTapAPIthat dismisses the visible Picture-in-Picture in-app; maps 1:1 to a JS side-effect call, so no API design was needed.Skipped (4)
CLEVERTAP_INAPP_FRAGMENTLESS_BANNERS— opt-in manifest flag set by the host app in its own AndroidManifest.xml; not always-required, so the wrapper manifest must not declare it.Deferred for design review (0)
Build manifest propagated
clevertap-android-sdkpin 8.3.0 → 8.4.1 (android/build.gradle,docs/install.md)iOS sync
Surfaced (1)
CleverTap.dismissPipInApp()— new public API onCleverTap+InAppNotifications.h; JS/TS/Android layers landed in the Android sync earlier in this release, so this run added the missing iOSRCT_EXPORT_METHODbridge and symmetrized docs/changelog across both platforms.Skipped (11)
_dismissPipInApp— private implementation detail inCTInAppDisplayManager.h, not part of the public CleverTap surface.announceInAppShown— declared inCTInAppDisplayViewControllerPrivate.h; internal accessibility plumbing, no host-app surface.handleNotificationDidShow— private view-controller callback, not callable by host apps.notifyDelegateActionTriggered:withExtras:— private in-app click-attribution plumbing behind the existing Notification Clicked event.triggerCloseActionWithCallToAction:elementId:— private in-app dismissal plumbing for the new split-of-clicks tracking.recordInAppNotificationMediaError:forNotification:— declared inCleverTapInternal.h; internal telemetry, not a public API.updateMessages:completion:— internalCTInboxControllermethod backing the App Inbox pull-to-refresh repaint fix; no new host-facing API.variantsCopy— internalCTVarCacheaccessor added for the concurrency crash fix.CTSessionManager init/session methods (removed)— internal session-manager refactor; never reachable from the RN bridge.CTTimerResult / CTInActionResult factory methods (removed)— internal in-app scheduler result types; never exposed through the RN bridge.discardedWithId:message: (changed)— signature normalisation on the internalCTDelayedInAppResulttype; no RN-visible impact.Deferred for design review (0)
Build manifest propagated
s.platformchange)CHANGELOG entries added
dismissPipInApp()to the RN bridge, plus Spin-the-Wheel/Scratch Card in-app templates, per-element in-app click attribution, accessibility improvements, and the App Inbox pull-to-refresh repaint fix.Native CHANGELOG entries (reviewer reference)
Android — corev8.4.1
Version 8.4.1 (August 7, 2026)
New Features
template support to Advanced InApp Builder in-app notifications.
dismissPipInApp()method onCleverTapAPIdismisses thecurrently visible Picture-in-Picture (PIP) In-App notification. Safe to call from any thread;
a no-op when no PIP is visible, and other in-app types are never affected.
show immediately. To keep a screen free of all in-apps, pair this with
suspendInAppNotifications()on screen entry andresumeInAppNotifications()on exit.notifications can now render when the host Activity is not a
FragmentActivity— for exampleUnity or Unreal game engines. Opt-in via the
CLEVERTAP_INAPP_FRAGMENTLESS_BANNERSmanifestflag; default off, so existing integrations are unaffected.
Bug Fixes
message list after a pull-to-refresh — newly fetched messages only appeared after closing and
reopening the inbox.
Android — intermediate corev8.4.0
Version 8.4.0 (July 28, 2026)
New Features
Adds per-element click attribution to In-Apps
Notification Clickedevent across all in-app templates. Also adds configurableswipe-to-dismiss gesture for In-Apps, and tracks these dismissals as Notification Clicked events.
Improvements
Enhances accessibility across In-App notifications and App Inbox with dynamic text scaling, screen-reader announcements and
content descriptions (close button, images, media controls), a larger 48dp dismiss-button tap area, and corrected carousel
TalkBack navigation — helping apps meet accessibility standards.
Bug Fixes
UPSERT) that needs SQLite 3.24.0 or newer, which Android only ships from Android 11 onwards, so every inbox write failed silently on older devices. Present inv8.2.0andv8.3.0.AbstractMethodErrorcrash seen when a Picture-in-Picture (PIP) In-App notification played a video on Android 6.0 (API 23). Media3'sPlayer.Listenerinterface relies on Java 8 default methods, which Android 6.0 does not support at runtime, so any callback the SDK had not explicitly overridden crashed the app. The SDK's sharedMedia3PlayerListenernow implements all of them. Only affects apps whoseminSdkVersionis below 24.iOS — corev7.8.1
Version 7.8.1 (August 7, 2026)
Added
dismissPipInApp()method onCleverTapAPIdismisses the currently visible Picture-in-Picture (PIP) In-App notification.suspendInAppNotifications()on screen entry andresumeInAppNotifications()on exit.Fixed
iOS — intermediate corev7.8.0
Version 7.8.0 (July 28, 2026)
Added
Notification Clickedevent across all in-app templates. Also adds configurable tap-outside and swipe-to-dismiss gestures for In-Apps, and tracks these dismissals as Notification Clicked events.Fixed
NSKeyedArchiver replaceObject:that could occur while saving variable diffs.variantsupdates.Notification Clickedevent was not including deeplink properties for HTML In-Apps.Run metadata
npx eslintwas blocked by the sandbox during the Android sync (5 permission denials); JS edits were verified by re-reading files instead. CI lint must cover this.For the reviewer
This PR is auto-generated. Please: