Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

intercept the Android's OS incoming call screen and replace

Tags:

android

I would like to intercept the Android's OS incoming call screen and replace it with my app's incoming call screen. However, there is no API to do so, but I know for sure it is possible as 4 different companies implemented this; The companies I'm talking about are: Adaffix (Yellix), Vringo, WhitePages Caller ID and more. They are all cleanly replaces the OS incoming call screen with their app's incoming call screen as the call arrives (no delay, no glitches, it is always working).

I was able to find a partial solution but this solution is not stable, as sometimes it is showing my app incoming call screen and sometimes the OS incoming call screen. each call it reacts differently.

Do you have any Idea?

like image 679
monika Avatar asked Jan 25 '12 11:01

monika


People also ask

How do I fix incoming call screen?

Method 2: (For Android Pie-based Phones) Step 1: Go to App Info of the Phone Dialer app and tap on Notifications. Step 2: Tap on the 'Incoming Calls' option and then on behavior. Step 3: Now tap on 'Behaviour'. Step 4: Ensure that the notification priority is set to urgent or “Make sound and pop up”.

Can we change the call display?

Open the Phone app . Settings. Tap Display options.


1 Answers

You will have to overlay the native screen with a control(maybe a dialog box) when you get android.intent.action.PHONE_STATE as ringing.

You have to register a BroadcastReceiver for the action android.intent.action.PHONE_STATE.

The receiving intent will have a variable TelephonyManager.EXTRA_STATE_RINGING which will have the current state.

Let me know!

like image 86
LordKakarot Avatar answered Sep 22 '22 13:09

LordKakarot