Возможно ли при нажатии действия уведомления открыть приложение без ввода пароля экрана блокировки? - PullRequest
0 голосов
/ 04 октября 2019

У меня есть приложение для вызова SIP. И моя логика на телефонах состояла бы в том, чтобы открыть IncomingCallScreen.

У меня было это на нем:

 private fun wakeUpDeviceWhenWindowShown() {
    window.addFlags(FLAG_SHOW_WHEN_LOCKED or FLAG_DISMISS_KEYGUARD or FLAG_TURN_SCREEN_ON or FLAG_ALLOW_LOCK_WHILE_SCREEN_ON)
}

, которое работало безупречно, до Android 10. На Android 10 я не могу сделать из своего SIPServiceвызов для запуска действия, потому что запуск действия из службы больше не разрешен. Поэтому я сделал уведомление с RemoteViews, и у меня есть 2 кнопки «Ответить» и «Отклонить».

При ответе я делаю это:

    val intentAnswer = Intent(context, IncomingCallActivity::class.java)
    intentAnswer.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
    intentAnswer.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
    intentAnswer.putExtra(SIPManager.PARAM_CALL_NAME, name)
    intentAnswer.putExtra(SIPManager.PARAM_ANSWER_SIP, name)
    val pendingIntentAnswer = PendingIntent.getActivity(context, 2, intentAnswer, PendingIntent.FLAG_UPDATE_CURRENT)
    contentView.setOnClickPendingIntent(R.id.answerCall, pendingIntentAnswer)

Но когда я нажимаю кнопку «Ответ», она неперейдите непосредственно к экрану IncomingCall, но он запрашивает пароль. Можно ли это отклонить? чтобы пользователю не нужно было вводить свой пароль?

...