Я использую Android Oreo, и мне нужно программно нажимать (или имитировать, если это возможно) какой-либо символ на DialPad при получении входящего вызова.
У меня есть следующий код, который автоматически принимает телефонный звонок:
override fun onReceive(context: Context, intent: Intent?) {
if(intent == null || intent.extras == null)
return
val stateStr = intent.extras.getString(TelephonyManager.EXTRA_STATE)
if(stateStr == null || stateStr != TelephonyManager.EXTRA_STATE_RINGING)
return
val savedPhone = prefs.getPhoneNumber()
val number = intent.extras!!.getString(TelephonyManager.EXTRA_INCOMING_NUMBER)
if (savedPhone != number)
return
val telecomManager = context.getSystemService(Context.TELECOM_SERVICE) as TelecomManager
telecomManager.acceptRingingCall()
}
Как я могу нажать dialPad btn или симулировать его программно?