Repository navigation
10.4.0
·
179 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
Added
- Expo: added Expo CNG / prebuild support for development builds. Expo Go is not supported because this library requires native modules and native notification targets/capabilities.
- Expo / iOS / FCM Mode: added official config plugin automation for the
NotifyKitNSENotification Service Extension used by iOS FCM Mode, including generated Swift service,Info.plist, entitlements, Xcode target wiring, EASappExtensionsmetadata, Podfile target,RNNotifeeCoredependency, and.appexembedding. - Expo / Android / foreground services: added explicit opt-in config plugin support for NotifyKit foreground service manifest requirements. When configured, the plugin writes
app.notifee.core.ForegroundService,android:foregroundServiceType, the baseFOREGROUND_SERVICEpermission, required type-specificFOREGROUND_SERVICE_*permissions, and the requiredspecialUsesubtype property. - Expo smoke app: added
apps/expo-smokefixture coverage for development build validation with Expo SDK 55, React Native 0.83.6,expo-dev-client, andreact-native-notify-kitresolved from the workspace or a packed tarball. - Expo smoke app / Android FCM: added Android FCM smoke support through local
google-services.json, RNFirebase data-only receive paths,notifee.handleFcmMessage, and theandroid-expo-smokesender scenario.
Fixed
- iOS / Expo: fixed NSE Podfile integration for Expo prebuild by isolating the generated
NotifyKitNSEtarget as a top-level target instead of inheriting the Expo host target module graph. - iOS / Expo / Firebase: aligned the generated NSE Podfile linkage with Firebase static frameworks and
use_frameworks!configurations used by Expo development builds. - iOS / NSE: fixed a static-framework header import issue involving
NotifeeExtensionHelperandNotifeeCorewhenRNNotifeeCorecompiles inside a Notification Service Extension.
Tests
- Packaging / Expo: validated real npm tarball install from a scratch fixture, plugin resolution from
node_modules, Expo config, iOS prebuild,pod install,xcodebuild,NotifyKitNSE.appexgeneration, and embedding in the app bundle. - Expo smoke app: validated development build runtime smoke on iOS and Android, including TurboModule startup and basic notification display/read paths.
- FCM Mode / iOS: validated foreground delivery on a physical iPhone with real FCM payloads and a generated NSE, including logical iOS attachment metadata in
getDisplayedNotifications()and observedNotifyKitNSEprocess. Visible FCM background delivery and tap-to-open were observed, but JSPRESSmarker validation for iOS background tap remains a follow-up. Killed state, visual lock-screen/banner attachment rendering, textual NSE logs, and data-only RNFirebase client-handler paths are not claimed as verified in this release. - Expo / Android: validated Expo config, Android prebuild,
expo run:android, base NotifyKit runtime, FCM token registration, foregroundandroid-expo-smoke, backgroundandroid-expo-smoke, visible notification display, and killed-state best-effort delivery without force-stop on a Pixel 9 Pro XL running Android 16 / SDK 36. - FCM Mode / Android / Expo: validated RNFirebase data-only foreground and background receive paths with
SMOKE:FCM_ON_MESSAGE,SMOKE:FCM_FOREGROUND_HANDLE_OK,SMOKE:FOREGROUND_EVENT_DELIVERED,SMOKE:FCM_BACKGROUND_MESSAGE, andSMOKE:FCM_BACKGROUND_HANDLE_OK. - FCM Mode / Android / Expo: validated Android foreground/background delivery and tap routing in the Expo smoke app on a Pixel 9 Pro XL, including background
SMOKE:BACKGROUND_EVENT_PRESSwith coherentcorrelationIdandpressActionId=default. The optional foreground tap path was also observed withSMOKE:FOREGROUND_EVENT_PRESS. - Expo / Android / foreground services: validated the Android Expo foreground service config plugin with a real prebuild and a runtime
shortServicesmoke on a Pixel 9 Pro XL. The gate covered manifestshortService,displayNotificationwithasForegroundService,registerForegroundService,stopForegroundService,cancelNotification, anddumpsysconfirmation oftypes=0x00000800/isShortFgs=truewithoutMissingForegroundServiceTypeException,SecurityException, or AndroidRuntime crash.
📦 npm: https://www.npmjs.com/package/react-native-notify-kit/v/10.4.0