You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(example): native platform setup for Firebase push (iOS + Android)
Wire up native-level Firebase push integration with @react-native-firebase
and Klaviyo, using the JS-first init pattern. Both platforms compile and
launch without Firebase configured — push features are just disabled in
that mode — and light up end-to-end when a Firebase config file is present.
iOS:
- AppDelegate.mm: guard [FIRApp configure] on GoogleService-Info.plist
presence, wire UNUserNotificationCenter delegate, preserve deep-link +
universal-link handlers, keep commented native-init reference block
- Podfile: $RNFirebaseAsStaticFramework = true, static frameworks linkage
- Info.plist: UIBackgroundModes = [fetch, location, remote-notification],
location usage descriptions, scheme registration
- Entitlements: aps-environment = development, wired via
CODE_SIGN_ENTITLEMENTS in the Xcode project
- Bundle id normalized to com.klaviyoreactnativesdkexample (matches
Firebase app id and Android applicationId)
- GoogleService-Info.plist reference added to the Xcode project so the
file is bundled when integrators drop it in
Android:
- Remove dead initializeKlaviyoFromNative / publicApiKey /
useNativeFirebase gradle→BuildConfig plumbing (nothing reads them)
- Conditionally apply com.google.gms.google-services plugin on the
presence of app/google-services.json — lets the project build cleanly
without push configured
- MainApplication.kt: clean commented reference for native init; primary
init path stays in JS
- Add google-services.json.template as a placeholder so the gradle plugin
has something to resolve until integrators add their own
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
0 commit comments