Incoming Phone Call Receiver
BroadcastReceiver
BroadcastReceiver
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(final Context context, Intent intent) {
Log.i("MyReceiver", "call state changed.... ");
//Tracking 2nd sim Mobile number
String second_state = intent.getStringExtra(TelephonyManager.EXTRA_STATE);
String second_number = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);
Log.i("MyReceiver", "call state changed.... "+second_number);
Log.i("MyReceiver", "call state changed.... "+second_state);
TelephonyManager mtelephony = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
mtelephony.listen(new PhoneStateListener(){
@Override
public void onCallStateChanged(int state, String incomingNumber) {
Log.i("MyReceiver", "call state changed.... "+state);
super.onCallStateChanged(state, incomingNumber);
switch (state) {
case TelephonyManager.CALL_STATE_RINGING:
Log.d("MyReceiver", "I'm in " + state + " and the number is " + incomingNumber);
break;
default:
break;
}
}
},PhoneStateListener.LISTEN_CALL_STATE);
}
}
From Activity
From Activity
MyReceiver myReceiver = new MyReceiver();
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(TelephonyManager.ACTION_PHONE_STATE_CHANGED);
intentFilter.addCategory(Intent.CATEGORY_DEFAULT);
registerReceiver(myReceiver, intentFilter);
Manifest.XML
Manifest.XML
<receiver android:name=".MyReceiver" >
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>
Permissions
Permissions
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.READ_CALL_LOG"/>
References
References
- https://stackoverflow.com/questions/13154445/how-to-get-phone-number-from-an-incoming-call
- https://stackoverflow.com/questions/53191903/how-to-show-the-incoming-call-screen-when-the-screen-is-locked
- https://developer.android.com/guide/topics/connectivity/telecom/selfManaged
- https://stackoverflow.com/questions/43629659/incoming-call-block-in-android-exception
- https://stackoverflow.com/questions/19005642/get-phone-number-of-incoming-call-in-all-android-versions