Incallui |link| May 2026
Trying to overlay a Dialog on top of the system InCallUI. This never works reliably due to SYSTEM_ALERT_WINDOW restrictions and the fact that the system InCallUI has the highest priority ( TYPE_APPLICATION_OVERLAY is lower than TYPE_PHONE ).
Now, your Android tablet can show an InCallUI for a call active on your phone. This is implemented via a new InCallService extension that proxies touch events (mute, speaker) back to the phone over Bluetooth LE. incallui
adb shell am force-stop com.android.dialer adb shell am start -a android.intent.action.ANSWER If the phone still rings but you can't see the UI, you've replicated a core Telecom bug. With Android 14, Google doubled down on "cross-device calling" (Call Streaming). This introduces a new layer: RemoteInCallService . Trying to overlay a Dialog on top of the system InCallUI
The InCallUI activity requires an absurdly fast start-up time. Telecom starts a "warm-up" process pre-emptively. If your InCallActivity takes longer than ~200ms to inflate its layout or bind to InCallService , the system times out. The call connects, but the UI never appears. This is implemented via a new InCallService extension
If you’ve ever built a VoIP or carrier-grade calling app for Android, you’ve likely cursed the black box known as InCallUI . It’s the system-level interface that pops up when you receive or make a phone call—the screen with the accept, decline, speakerphone, and keypad buttons.
Use adb shell dumpsys telecom and look for InCallController . If you see mIsBound = false while a call is active, your UI has crashed silently. Customizing InCallUI (The Right Way) Let’s say you're building a VoIP app (like WhatsApp or Signal). You don't want to replace the system dialer. You want your own call screen inside your app.
But here’s the catch: For a long time, InCallUI was a tightly guarded, OEM-specific application. With the introduction of the Telecom framework and ConnectionService APIs, Google attempted to standardize it. Yet, the reality remains messy.














