Как показать активность входящего звонка
Я занимаюсь разработкой приложения для видео и голосового чата.
Что мне нужно сделать, это показать некоторую активность входящего вызова, когда пользователь пытается позвонить другому пользователю.
Я уже использую Firebase Cloud Message для отправки push-сообщения, предупреждающего устройство о том, что существует запрос вызова.
Но я сталкиваюсь с трудностями, пытаясь разбудить устройство и показать перед экраном блокировки входящий вызов, чтобы пользователь мог принять или отклонить вызов.
Что я ищу, так это то, что делает приложение Whats, когда вы звоните кому-нибудь.
Показывает, что когда устройство разблокировано и приложение запущено и работает, это не проблема.
Но как мне заархивировать эту цель, когда устройство заблокировано и черный экран.
1 ответ
Я также разрабатывал такого рода приложение, и я сделал следующее: я использовал несколько флагов для WindowManager для той конкретной деятельности, которую я должен показывать на экране во время события входящего вызова.
Попробуйте добавить приведенный ниже код в метод OnCreate() действия, которое вы намереваетесь показать на экране.
getWindow().addFlags(
WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
+ WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD
| +WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
| +WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
И упомянуть следующие разрешения в манифесте:
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<uses-permission android:name="android.permission.WAKE_LOCK" />
Надеюсь, это поможет вам.!!