- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个安卓应用。对于通知,我们必须显示一些操作按钮。当应用程序打开时,我们可以自由构建通知并显示操作按钮。
但是当应用程序关闭时,通知会在 android 的通知托盘中收到。应用程序开发人员无法控制构建用户界面和操作按钮的地方。我们现在如何显示按钮?如何从服务器端格式化数据,以便在应用程序接收到数据时,我们可以看到操作按钮
最佳答案
根据我的经验,发生这种情况是因为您正在发送通知消息。正如谷歌解释的那样here清楚地:
Notification messages are delivered to the notification tray when the app is in the background. For apps in the foreground, messages are handled by a callback function.
现在,如果您想使用 Firebase Cloud Messaging 发送通知并始终以您自己的自定义方式显示收到的通知,您可以使用不包含 notification
FCM 数据消息
部分,像这样:
{
"message":{
"token":"bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...",
"priority":"high",
"data":{
"title" : "Custom notif",
"body" : "This is a custom data notification!",
"action" : "A|B|C"
}
}
}
收到此通知后,Firebase 不会将其显示在托盘面板中,而是将其传送到您的应用程序(您的应用程序在前台或后台)。然后您可以使用字段data
部分创建和显示带有自定义操作的自定义通知。
您还可以将任何字段放入 data
部分,title
等字段只是示例。
客户端中的额外实现细节:
要在 android( native 和/或 react native )中处理数据消息,您可以使用远程消息(但使用不同的方式)。
React 原生:对于 React Native 中仅处理数据的通知,您可以使用此 example .
原生安卓:在 native android 中,您可以使用服务的 onMessageReceived(RemoteMessage remoteMessage)
方法(实现 FirebaseMessagingService)。然后按照说明 here 通过 remoteMessage.getData() 使用负载数据.
关于android - 应用程序关闭时如何在 Android 通知中显示操作按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59733439/
我是一名优秀的程序员,十分优秀!