如何从通知发送回复?

时间:2019-12-09 15:25:30

标签: android android-notifications

我正在做一个用于管理收到的通知的应用程序。目前,我正在实现用户可以通过回复操作进行回复的功能,但是我找不到合适的方法来正确设置回复消息并发送消息。

这是我尝试过的

fun sendReplyMessage(sbn: StatusBarNotification, replyMessage: String) {
    sbn.notification.actions.firstOrNull { it.remoteInputs != null }?.let { action ->
        action.remoteInputs?.get(0)?.extras
            ?.putCharSequence(action.remoteInputs?.get(0)?.resultKey, replyMessage)
        action.actionIntent.send()
    }
}

1 个答案:

答案 0 :(得分:1)

您必须获取通知操作才能访问待处理的意图,在该意图上添加远程输入,然后调用方法PendingIntent#send(context,requestCode,intent)

val notificationAction: android.app.Notification.Action = "Get the Action here"

val bundle = Bundle().apply{
     putString(remoteInput.resultKey, "Add the text here")
}

val intent = Intent().addFlags(Intent.FLAG_RECEIVER_FOREGROUND)

RemoteInput.addResultsToIntent(notificationAction.getRemoteInputs(), intent, bundle)

notificationAction.actionIntent.send(context, 0, intent)