Создать новый класс, скажем, MyPhoneReceiver , расширить его из BroadcastReceiver и реализовать метод onReceive.
public class MyPhoneReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent){
String phoneNumber = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);
}
}
В другом классе, скажем, MainActivity.class внутри метода onCreate.например.
IntentFilter filter = new IntentFilter("android.intent.action.NEW_OUTGOING_CALL");
MyPhoneReceiver myPhoneReceiver = new MyPhoneReceiver();
registerReceiver(myPhoneReceiver,filter);
В AndroidManifest.xml
<receiver
android:name=".MyPhoneReceiver">
<intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
</intent-filter>
</receiver>
, а также в AndroidManifest.xml добавьте:
<uses-permission
android:name="android.permission.PROCESS_OUTGOING_CALLS">
</uses-permission>