Я создаю приложение Voip в android. Все работает нормально, но я не могу понять, как принимать и отклонять вызовы.
Я использую TelephoneManager#addNewIncomingCall
, чтобы сообщить о новых вызовах в систему. После этого я создал Connection
объект в ConnectionService#onCreateIncomingConnection
и вернул его. Вызван onShowIncomingCallUi
, и я создаю уведомление следующим образом:
val intent = Intent(context, TokboxActivity::class.java).apply {
flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
this.putExtras(this@Call.extras)
}
val pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT)
val notification = NotificationCompat.Builder(context, "OKDOK")
.setSmallIcon(R.drawable.common_full_open_on_phone)
.setContentTitle("OKDOK")
.setContentText("Incoming call from ${extras.getString("docName")}")
.setPriority(NotificationCompat.PRIORITY_MAX)
.setCategory(NotificationCompat.CATEGORY_CALL)
.setFullScreenIntent(pendingIntent, true)
.build()
notification.flags = notification.flags or NotificationCompat.FLAG_INSISTENT
val notificationManager = context.getSystemService(
NotificationManager::class.java)
notificationManager.notify("OKDOK", 0, notification)
Я тоже получаю уведомление. Но у меня есть две кнопки в TokboxActivity
. Я хочу, чтобы они приняли и отклонили звонок. Как мне это реализовать?