应用研发平台EMAS上AndroidInboxBody
string
Inbox 模式下的正文,内容为合法的 JSON Array,且元素不超过 5 个。当前支持:
华为:EMUI9 及以上
荣耀:Magic UI 4.0 及以上
小米:MIUI10 及以上
OPPO:ColorOS 5.0 以上
自有通道:安卓 SDK3.6.0 及以上
app 里是如何展示通知的?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在EMAS平台上,当您使用Inbox模式发送通知时,Android设备在EMAS平台上,当您使用Inbox模式发送通知时,Android设备会将通知的正文以卡片的形式展示在设备的锁屏或通知栏上。
具体来说,如果接收到的通知包含一个合法的JSON Array作为InboxBody的内容,那么这个数组中的元素将会被解析并显示为卡片的标题和内容。例如,如果您的InboxBody如下:
{
"title": "新消息",
"content": "这是一条新的消息"
}
那么在华为、荣耀、小米、OPPO等支持Inbox模式的设备上,这条通知将会以卡片的形式展示,标题为"新消息",内容为"这是一条新的消息"。
需要注意的是,不同的设备可能会有不同的展示方式和限制,例如元素数量的限制等。因此,为了确保通知能够正确展示,建议您查阅相关设备的官方文档,了解其对Inbox模式的具体支持情况。
EMAS的AndroidInboxBody用于在通知中展示消息内容。当您使用EMAS发送通知时,可以将AndroidInboxBody作为通知的正文内容。
在应用中,您可以使用以下代码来获取并显示通知的正文内容:
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, CHANNEL_ID)
.setSmallIcon(R.drawable.notification_icon)
.setContentTitle("My notification")
.setContentText(getInboxBody()) // 获取并设置通知正文内容
.setPriority(NotificationCompat.PRIORITY_DEFAULT);
其中,getInboxBody()
方法用于获取通知的正文内容。您可以根据需要自定义该方法,以从EMAS服务或其他数据源中获取AndroidInboxBody的内容。例如,您可以从EMAS控制台获取通知的JSON数组,并将其解析为字符串或对象,然后将其设置为通知的正文内容。
请注意,以上代码仅为示例,您可能需要根据您的具体需求进行适当的修改和调整。
多行正文,一行一条。参考:
https://developer.huawei.com/consumer/cn/doc/HMSCore-Guides-V5/android-inbox-style-0000001050042085-V5
此回答来自钉群应用研发平台EMAS开发者交流群。