sercrod

Choosing a notification route

For ordinary mobile notifications, start with the platform-standard push route. The application server, data, authentication, and notification decisions may remain self-hosted; only delivery to the device is delegated to FCM or APNs. Push requires coordinated permission, registration, server handoff, receive, and removal stages; read the Push workflow guide before implementing it.

Standard route
  → Android: FCM
  → iPhone: APNs
  → iPhone VoIP: APNs PushKit, then CallKit and the call connection
  → Browser: FCM Web or standards-based Web Push after user permission

Delayed delivery is sufficient
  → Android / iPhone: Background Runner checks your HTTPS endpoint

Google-independent Android realtime is required
  → Foreground Service keeps a WebSocket to your server
  → requires an ongoing notification; no general-purpose iPhone equivalent

Comparison

Route Timing Platform Sercrod surface
FCM / APNs Standard timely mobile push Android / iPhone *push
FCM Web / Web Push Opt-in browser push Supported browsers; Home Screen web app on iPhone/iPad *push
Background Runner Delayed and OS-scheduled alternative Android / iPhone *background-notification
Foreground Service + WebSocket Google-independent realtime alternative Android only *foreground-notification

Background Runner is not continuously resident and is not a complete push replacement. Android Foreground Service requires an ongoing system notification. iPhone does not permit an app to reproduce that general-purpose always-on route; even VoIP wake-up uses APNs PushKit.

Responsibility and costs

Sercrod supplies client adapters and directives. With standard push, the developer can keep the application backend self-hosted and use FCM/APNs only for device delivery. The developer owns authentication, provider credentials, token storage, recipients, deduplication, hosting, and distribution compliance. Never place server send keys in the app bundle.