极光推送java后台使用别名推送安卓与ios平台时,附加自定义附加字段
开发时遇到一个问题,app端需要通过不同推送内容,跳转到不同的界面,所以需要在推送时传递给前台一个不同界面的标识符,用来告知具体跳转到哪个界面。
查看了极光推送的java文档,发现其中没有这个方法。试了很多种方法,最终实现需求。
/**
* 安卓与ios平台,通过别名推送
* @param alias 别名
* @param content 推送内容
* @param key 拓展字段key值
* @param value 拓展字段value
* @return
*/
public static PushPayload buildPushObject_all_alias_alert(String alias, String content,String key,String value) {
return PushPayload.newBuilder()
.setPlatform(Platform.android_ios())
.setAudience(Audience.alias(alias))
.setNotification(Notification.newBuilder()
.setAlert(content)
.addPlatformNotification(AndroidNotification.newBuilder().addExtra(key,value)
.build())
.addPlatformNotification(IosNotification.newBuilder()
.setBadge(5)
.setSound("default").addExtra(key,value)
.build())
.build())
.build();
}
其中extra附加字段中,比如key定义为type段,value可定义为1,2,3等,推送不同内容时,前台只需获取type的值,即可根据value跳转到不同界面。