- Ask PIN code when screen is locked and Call URI is clicked

This commit is contained in:
Juha Heinanen
2019-04-20 15:53:37 +03:00
parent 65947fb023
commit b1372f1f1b

View File

@ -46,6 +46,7 @@ class MainActivity : AppCompatActivity() {
internal lateinit var aorSpinner: Spinner
internal lateinit var imm: InputMethodManager
internal lateinit var nm: NotificationManager
internal lateinit var kgm: KeyguardManager
internal lateinit var serviceEventReceiver: BroadcastReceiver
internal lateinit var quitTimer: CountDownTimer
internal lateinit var stopState: String
@ -58,11 +59,11 @@ class MainActivity : AppCompatActivity() {
val intentAction = intent.getStringExtra("action")
Log.d("Baresip", "Main created with action '$intentAction'")
kgm = getSystemService(Context.KEYGUARD_SERVICE) as KeyguardManager
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O_MR1) {
setShowWhenLocked(true)
setTurnScreenOn(true)
val keyguardManager = getSystemService(Context.KEYGUARD_SERVICE) as KeyguardManager
keyguardManager.requestDismissKeyguard(this, null)
kgm.requestDismissKeyguard(this, null)
} else {
window.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED or
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON or
@ -191,7 +192,18 @@ class MainActivity : AppCompatActivity() {
Contact.contacts().map { Contact -> Contact.name }))
callUri.threshold = 2
callUri.setOnFocusChangeListener { view, b ->
if (b) imm.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT)
if (b) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O_MR1) {
kgm.requestDismissKeyguard(this, null)
}
imm.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT)
}
}
callUri.setOnClickListener { view ->
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O_MR1) {
kgm.requestDismissKeyguard(this, null)
}
imm.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT)
}
securityButton.setOnClickListener {