想在下发通知的时候添加自定义字段?想发送用户无感知的信息用于更新 App?请读下去
一、如何推送
1.1 添加扩展字段 extra
通知 Notification 对象的 Android 或 iOS 属性下分别传扩展字段 extra,通知内容 alert 会展示,extra 信息不会展示
- 服务端代码如下:
"notification": { "android": { "alert": "Hi, JPush!", "title": "Send to Android", "builder_id": 1, "extras": { "newsid": 321//此处传 Android 的 extra 信息,key 和 value 都由你自己定义,可以传多个。 } }, "ios": { "alert": "Hi, JPush!", "sound": "default", "badge": "+1", "extras": { "newsid": 321//此处传 iOS 的 extra 信息,key 和 value 都由你自己定义,可以传多个。 } } },
- 官网推送 - 展开可选设置
1.2 推送自定义消息 Message
自定义消息 Message,与通知 Notification 一样,是一条推送的实体内容对象之一,主要区别在于自定义消息的所有内容完全不会展示出来
代码示例:
"message": {
"msg_content": "Hi,JPush",
"content_type": "text",
"title": "msg",
"extras": {
"key": "value"// Message 信息同样可以添加 extra 字段
}
},
二、 如何获取上述自定义信息
2.1 Notification 的 extra 信息的接收
- Android,文档链接点我
Action - JPushInterface.ACTION_NOTIFICATION_RECEIVED. JPushInterface.EXTRA_EXTRA
- iOS,文档链接点我
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { // 取得Extras字段内容 NSString *customizeField1 = [userInfo valueForKey:@"customizeExtras"]; //服务端中Extras字段,key是自己定义的
2.2 自定义消息 Message 的接收
- Android,文档链接点我
Action - JPushInterface.ACTION_MESSAGE_RECEIVED
- iOS,文档链接点我
- (void)networkDidReceiveMessage:(NSNotification *)notification { NSDictionary * userInfo = [notification userInfo]; NSString *content = [userInfo valueForKey:@"content"]; NSString *messageID = [userInfo valueForKey:@"_j_msgid"]; NSDictionary *extras = [userInfo valueForKey:@"extras"]; NSString *customizeField1 = [extras valueForKey:@"customizeField1"]; //服务端传递的 Extras 附加字段,key 是自己定义的 }
如果对你有帮助,点个赞呗 ლ(╹◡╹ლ)
不吹不黑,关注「常见问题」专栏可以解决你 90% 的问题 (ノ◕ω◕)ノଘ_ଘ
如果还有你想知道的问题没有总结方案,来评论区跟我交流交流吖
0条评论