直接回复通知开始 activity

Direct reply notification starts an activity

我正在尝试获取在直接回复中键入的文本。我可以获取文本,但是当单击发送文本按钮时,它会打开意图显示的 activity。

val resultIntent = Intent(this, MessagesActivity::class.java)
val stackBuilder = TaskStackBuilder.create(this)

stackBuilder.addNextIntent(resultIntent)

val resultPendingIntent = PendingIntent.getActivity(
        this,
        0,
        resultIntent,
        PendingIntent.FLAG_UPDATE_CURRENT
)

这是通知生成器

val mBuilder = Notification.Builder(this, id)
    .setContentTitle(data["title"])
    .setContentText(data["body"])
    .setLargeIcon(image)
    .addAction(action)
    .setSmallIcon(R.drawable.logo)
    .setAutoCancel(true)

我不希望它打开 activity。我也尝试使用意图服务,但它不起作用。

您正在使用 PendingIntent.getActivity,这意味着您想要处理 activity 上的操作结果。 activity 需要先开始才能继续,这是合乎逻辑的。 来自 getActivity 的文档:

Retrieve a PendingIntent that will start a new activity, like calling Context.startActivity(Intent). Note that the activity will be started outside of the context of an existing activity, so you must use the Intent.FLAG_ACTIVITY_NEW_TASK launch flag in the Intent.

您需要使用PendingIntent.getBroadcast

有关详细信息,请查看 here