Вопрос

Мне нужно получить номер, который я звоню с программного устройства Android. Теперь я делаю следующее:

Я слушаю android.intent.action.PHONE_STATE транслируется, что означает, что меня называют или я звоню (или получаю SMS и т. Д.).

В BroadcastReceiver Я получаю дополнительный incoming_number от намерения. К сожалению, я не могу получить номер, который называется, если я Инициировать звонок, хотя. Как я могу это сделать?

Это было полезно?

Решение

Вам нужно использовать намерение android.intent.action.NEW_OUTGOING_CALL В этом намерении вы можете получить дополнительное Intent.EXTRA_PHONE_NUMBER который содержит исходящее число.

Намерение выпускается, если новый исходящий вызов интенсивный.

Вам понадобится разрешение android.permission.PROCESS_OUTGOING_CALLS для этого.

Надеюсь, это поможет.

Другие советы

@Override
public void onReceive(Context context, Intent intent) {
    String phonenumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
    Log.d("OutgoingCallReceiver",phonenumber);
    Log.d("OutgoingCallReceiver",intent.getExtras().toString());
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top