Я хотел бы знать, как перехватить входящие вызовы и автоматически активировать громкоговоритель. Я читаю этот класс, используется com.android.internal.telephony, но я не мог найти документацию propre. Спасибо за вашу помощь.Android Громкоговоритель и перехват вызовов
2
A
ответ
2
Вот код для перехвата входящих вызовов
PhoneStateListener mListner = new PhoneStateListener() {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
switch (state) {
case TelephonyManager.CALL_STATE_OFFHOOK:
// TODO
break;
case TelephonyManager.CALL_STATE_RINGING:
// TODO
break;
default:
break;
}
};
};
Включите громкий динамик
AudioManager POAudioService = (AudioManager) POContext.getContext().getSystemService(Context.AUDIO_SERVICE);
POAudioService.setSpeakerphoneOn(true);
1
private TelephonyManager telManager;
//on create method
telManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
if (telManager != null) {
telManager.listen(phoneStateListener,
PhoneStateListener.LISTEN_CALL_STATE);
}
PhoneStateListener phoneStateListener = new PhoneStateListener() {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
if (state == TelephonyManager.CALL_STATE_RINGING) {
onCall = true;
} else if (state == TelephonyManager.CALL_STATE_IDLE) {
onCall = false;
} else if (state == TelephonyManager.CALL_STATE_OFFHOOK) {
onCall = true;
//activate your loud speaker
}
super.onCallStateChanged(state, incomingNumber);
}
};
1
Необходимые права: использует разрешение-андроид: имя = "android.permission.MODIFY_AUDIO_SETTINGS"
Смежные вопросы
- 1. Перехват входящих вызовов на Android
- 2. Перехват входящих вызовов
- 3. Перехват вызовов DOM и JS
- 4. Перехват вызовов модуля?
- 5. Dojo - перехват вызовов XHR
- 6. Перехват вызовов на контроллеры
- 7. Перехват вызовов конструктору
- 8. Перехват вызовов по свойствам
- 9. Перехват вызовов WinAPI и изменение возвращаемых значений
- 10. Перехват вызовов определенным PHP-методам
- 11. Перехват вызовов на действия Mailer
- 12. Перехват вызовов методам в PHP
- 13. Перехват вызовов сна в C++
- 14. Java Перехват вызовов методу интерфейса
- 15. Динамический перехват вызовов в .NET
- 16. Перехват вызовов в функции DOM API
- 17. Перехват вызовов webpi2 с Виндзорским замком
- 18. Перехват вызовов дочерних методов с использованием Unity
- 19. Перехват вызовов jQuery ajax в Angular
- 20. Просмотр/перехват всех вызовов функций emacs lisp
- 21. Перехват системных вызовов (где переданы аргументы)
- 22. Перехват вызовов на HttpSession в Tomcat 6
- 23. Перехват вызовов службы при использовании Selenium
- 24. Перехват вызовов методу в другом сборке
- 25. Android: активируйте громкоговоритель во время разговора
- 26. Метод C# AOP Перехват вызовов дочерних методов?
- 27. Перехват исходящих голосовых вызовов и пункт назначения назначения
- 28. Перехват вызовов приемника и сеттера в Rails для обработки данных
- 29. Перехват вызовов gRPC C++ на сервере и клиенте
- 30. Перехват и переадресация вызовов C в стороннюю библиотеку
В приведенном выше коде, что такое POContext? Это класс, который вы создали? Я попробовал аналогичный код, чтобы включить динамик с помощью BroadCastReceiver, но он не работает. Можете ли вы ответить на этот вопрос: http://stackoverflow.com/questions/8617381/turn-on-speakerphone-whenever-an-outgoing-call-is-made Я предоставил все необходимые разрешения в файле манифеста. – AllSolutions
POContext - это обычный контекст. Я определил его как свою собственную переменную –