java服务器极光推送消息,JavaServer集成极光推送

(适用于ydm-java接口与后台,如有误入,但愿也能给您带来帮助)

引子:

推送在项目中,一般是想达到和用户单方面交互的功能,在ydm大多用于系统消息;总的来说,系统消息均拿表来维护,一种是单表(推送的用户以逗号的形式单行保存),一种是多表(消息主表和关联用户子表),我更建议是后者,这样已读、未读、删除等操作会更加便捷明了;后来有机会面试其他移动互联的开发者的时候,也听闻到了不用表来维护,直接依赖 极光 ,这种思路也是可以的,建议在这方面拓展。

碎碎念:

在天燃气项目中,推送的类别很多,可以按照部门、岗位、具体员工来推。

涉及到极光里,按标签推送以及按别名进行推送。

别名是唯一的,App端一般以ID向极光注册,服务端就可以根据ID定位到这个用户了;

标签是可以有多个的,正如现实生活中一样,身兼数职,App端可以向极光注册dept_1(部门1),服务端根据这个标签进行推,那么所有向极光注册为dept_1标签的用户都可以接收到通知;同理拓展也可以注册某个城市等等之类的。

后期的社交类项目中,业主没有专门的需求,对标签就没有涉及了,无忧、后宫、聊妹、蜗伴均只使用了按别名进行推送。

实际上:

这里就不贴代码了,官方对于java服务端SDK很明确,这里想建议下,不要无脑都把它的代码都贴上,除非要改人家的源码。我是放在push包底下的,一个是Config,有俩配置信息,一个是AppKey,一个是masterSecret;还有一个就是PushUtil了,这里只用了下针对别名的推送。下面展示调用示例:

推送单个、多个用户:

PushUtil.android_iOS_Alias(String title,String content,boolean flag,String...uids);

title Android显示的标题,对iOS无作用 (iOS并没有标题这一说法)

content 内容 iOS只显示这个

flag iOS false 开发环境 true生产环境 (实际上flag部署到服务器上我经常写死)

uids 字符串数组 存储着别名 别名为用户的id 这个地方可以传单个字符串,也可以传一个数组,传数组的时候就可以推送多个用户了

推送全部用户:

PushUtil.android_iOS_All(String titile,String content,boolean flag);

很容易理解,全部用户不需要传别名。

备注:

iOS有开发和生产环境这么一说,何为开发,就是iOS的App在工程师的电脑上才能安装,何为生产,就是iOS的App在AppStore里或蒲公英下手动下载的版本;实际上,正式发布的均为生产环境;

推送多个人的时候,切记可以传一个数组,不要以循环的方式调用PushUtil.android_iOS_Alias(),因为我们去调极光其实还是蛮长时间的,一但循环开,就更不可救药了;

PushUtil里Tag就是指的是标签了。

写于2017-03-17。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值