2017-02-13 2 views
1

Я работаю над приложением VOIP. Когда входящий вызов отображается до версии Android версии 5.0, входящий вызов отображается сверху на Lockscreen, но, начиная с версии 6.0, он отображается как уведомление. Экран вызова не отображается.Отображать входящий вызов VOIP поверх блокировки экрана в Marshmallow

После выполнения некоторого R & D добавлен следующий ниже коды перед setContentVies(),

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); 

Но до сих пор сталкивается с той же проблемой. Кто-нибудь может предложить мне, как отображать входящий звонок VOIP поверх экрана блокировки.

ответ

0

После получения IP-телефония толчок уведомления на моем приемнике я запускаю свою собственную входящий вызов активность, которая подменяет onAttachedToWindow метода, как это:

@Override 
public void onAttachedToWindow() { 
    super.onAttachedToWindow(); 
    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); 
} 

Это отлично работает для меня в Android 4.4 вплоть до Android 8.0, я до сих пор не пробовал в других версиях ОС. Я могу получать входящие пользовательские вызовы из своего приложения поверх заблокированного и разблокированного экрана.

Смежные вопросы