App Center推送通知name字段未在通知中显示问题求助
解决App Center Push API推送中
name字段不显示的问题 你提到自己正在使用App Center推送通知服务,通过HTTP POST调用Push API发送推送,请求的URL是:
https://api.appcenter.ms/v0.1/apps/XXXX/${platform}/push/notifications
使用的请求负载如下:
{ "notification_content" : { "name" : "First Push From App Center", "title" : "Push From App Center", "body" : "Welcome!", "custom_data" : {"key1" : "val1", "key2" : "val2"} }, "notification_target" : { "type" : "audiences_target", "audiences" : ["a-1", "a-2"] } }
现在设备能收到通知,但只有title和body显示,name字段的内容看不到——这其实是对name字段的作用理解偏差导致的。
为什么name字段不会在设备端显示?
name字段是App Center后台的内部标识字段,它的作用是让你在App Center控制台里区分不同的推送任务,方便后续查看推送的统计、历史记录等,根本就不会被推送到设备端展示给用户。
各字段的正确作用
给你明确下payload里几个核心字段的用途:
title:推送通知的标题,会直接显示在设备的通知栏上body:推送通知的正文内容,也是通知栏展示的核心内容name:仅用于App Center后台管理,和设备端展示无关custom_data:自定义业务数据,不会直接在通知栏显示,需要客户端代码解析后才能使用(比如用来触发特定页面跳转、展示额外弹窗等)
如果需要在设备端显示更多内容怎么办?
如果想给用户展示name里的内容或者其他额外信息,有两种可行方案:
- 把需要展示的内容合并到
body字段中,比如修改payload:{ "notification_content" : { "name" : "First Push From App Center", "title" : "Push From App Center", "body" : "Welcome! (First Push From App Center)", "custom_data" : {"key1" : "val1", "key2" : "val2"} }, "notification_target" : { "type" : "audiences_target", "audiences" : ["a-1", "a-2"] } } - 通过客户端代码自定义通知展示:在客户端监听推送事件,收到通知后解析
custom_data(或者如果一定要传递展示内容,可以把内容放到custom_data里),然后自己构建通知的布局和展示内容。
总结
你的API调用流程和推送通道都是正常的(设备能收到title和body就证明了这一点),只是误解了name字段的作用。按照上面的方案调整,就能实现你想要的额外内容展示效果啦。
内容的提问来源于stack exchange,提问作者Manspof
相关产品推荐
相关产品推荐

