Программно отключить звонок в Android

Я возвращаюсь к старому вопросу, опубликованному (в начале 2014 года) здесь:

Для недавнего проекта я создаю приложение, которое может отключить звук существующего вызова и получить аудиозапись от пользователя. Я знаю, что аудио-запись в режиме разговора работает, это не проблема (запись только с микрофона пользователя). Теперь я также могу программно уменьшить громкость, что я и сделал с помощью кода на моем Github, здесь

В частности, я использую класс AudioManager для установки громкости на 0, а также отключаю звук в качестве резервной копии, но не работает.. Мне интересно, является ли это специфической проблемой Samsung или нет..

mgr.setStreamVolume(stream, progress, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
mgr.adjustVolume(AudioManager.ADJUST_MUTE, AudioManager.FLAG_VIBRATE);
boolean a = mgr.isVolumeFixed();
Log.d("MUTING", "Volume fixed: "+a);
boolean streamMuteStatus = mgr.isStreamMute(stream);
Log.d("MUTING", "Stream Mute Status: "+streamMuteStatus);

Я печатаю вышеупомянутые логические переменные для целей тестирования, но оба выводят "False".

Но устройство Samsung S5 вообще не позволяет установить громкость на 0. Это верно даже при регулировке громкости во время разговора с помощью ползунка громкости. Ползунок физически не перемещается в крайнее левое положение на панели поиска. Смотрите рисунок ниже для самой левой позиции, к которой я могу перетащить:

Минимальная позиция панели поиска громкости звонка

Кто-нибудь есть какие-либо идеи о том, как я могу отключить поток входящих вызовов?

0 ответов

Другие вопросы по тегам