Firebase (iOS)
Firebase Cloud Messaging on iOS requires a separate native binding since Apple does not natively support FCM. This package provides a full iOS Firebase push provider with topic subscription support, while Android continues to use the built-in Shiny.Push Firebase support.
iOS Configuration
Section titled “iOS Configuration”Android Configuration
Section titled “Android Configuration”On Android, this package delegates to the built-in Shiny.Push Firebase support. Follow the standard Push Notifications Getting Started guide for Android Firebase setup using google-services.json.
Registration
Section titled “Registration”// Auto-config from GoogleService-Info.plist (iOS) / google-services.json (Android)services.AddPushFirebaseMessaging<MyPushDelegate>();
// Or with explicit configurationservices.AddPushFirebaseMessaging<MyPushDelegate>(new FirebaseConfiguration( UseEmbeddedConfiguration: false, AppId: "your-app-id", SenderId: "your-sender-id", ProjectId: "your-project-id", ApiKey: "your-api-key"));Topic Subscriptions
Section titled “Topic Subscriptions”On iOS, the Firebase provider implements IPushTagSupport, which maps tags to FCM topic subscriptions. Use the standard Shiny tag APIs:
IPushManager pushManager; // injected
if (pushManager.IsTagsSupport()){ await pushManager.Tags.AddTag("news"); await pushManager.Tags.SetTags("premium", "sports"); await pushManager.Tags.RemoveTag("news"); await pushManager.Tags.ClearTags();
var tags = pushManager.Tags.RegisteredTags;}How It Works
Section titled “How It Works”On iOS, the provider:
- Initializes the Firebase SDK (auto-config or manual)
- Swizzles the APNs token and exchanges it for an FCM registration token
- Provides the FCM token through the standard
IPushManager.RegistrationTokenproperty - Maps tag operations to FCM topic subscribe/unsubscribe calls
On Android, it delegates to Shiny.Push’s built-in Firebase support with the same FirebaseConfiguration options.