#android #broadcastreceiver #telephony #telephonymanager #phone-state-listener
#Android #broadcastreceiver #телефония #telephonymanager #прослушиватель состояния телефона
Вопрос:
Я разместил приведенный ниже код в BroadcastReceiver, и этот код срабатывает каждый раз, когда поступает новый вызов. Но пакет не содержит incoming_number. Распечатав пакет, я получаю пакет [{state= RINGING}] в качестве выходных данных. и я сталкиваюсь с этой проблемой только на новых телефонах (> = Android 9.0)
Bundle bundle = intent.getExtras();
System.out.println("Kokp 1:- " bundle);
String phoneNumber = bundle.getString(TelephonyManager.EXTRA_INCOMING_NUMBER);
Ответ №1:
Документация указывает, что EXTRA_INCOMING_NUMBER
заполняется только в том случае, если ваше приложение имеет следующие разрешения:
Это дополнительное значение заполняется только для получателей широковещательной рассылки ACTION_PHONE_STATE_CHANGED, которым было предоставлено Manifest.permission.READ_CALL_LOG и Manifest.permission.Разрешения READ_PHONE_STATE.