Hi everyone,
We are currently facing difficulties in implementing an incoming call screen that appears when a push notification is received. Below are the details of the issue:
Context
We are building a communication app where users receive incoming calls.
We are using FlutterFlow with Firebase Cloud Messaging (FCM) for push notifications.
The expected behavior is:
When a push notification for an incoming call arrives (whether the app is in the foreground, background, or terminated),
The app should display a full-screen incoming call UI (similar to a native call screen) with options to Accept or Decline.
On Accept, the user is navigated directly into the call screen.
Issues We Are Facing
Foreground Behavior
When the app is open, we are not able to display a custom call dialog or screen triggered from the push notification.
Notifications are received, but there doesn’t seem to be a way in FlutterFlow to override the UI and force an incoming call screen while the user is inside the app.
Background & Terminated State
Notifications arrive in the system tray, but we are unable to auto-display a custom incoming call screen.
Currently, tapping the notification navigates the user into the app, but the call screen does not appear immediately.
Platform Limitations
On Android, we were exploring whether we could integrate with flutter_callkit_incoming or similar solutions, but custom code integration in FlutterFlow seems restrictive.
On iOS, we are aware that showing a full native call screen requires CallKit integration, but again, we are unsure how to achieve this in FlutterFlow.
Questions / Support Needed
Is there a recommended approach or best practice in FlutterFlow to show a full-screen incoming call UI triggered directly from push notifications (both foreground and background)?
Does FlutterFlow support CallKit / ConnectionService-like functionality for iOS and Android? If not, can this be achieved via custom code integration? We tried, but it shows an error.
How can we ensure the incoming call screen appears even when the app is in background or killed state?
Any sample workflows or community-proven patterns would be greatly appreciated.
Goal
We want to provide users with a seamless incoming call experience, similar to WhatsApp or Messenger, where the call screen immediately pops up regardless of the app state.
Thanks