您的位置:首页 > 移动开发 > Android开发

JAVA服务端用友盟给APP(android和IOS)推送消息--转自Carrot_lin

2017-03-02 18:08 1811 查看
Java后端要推送消息给前端的话一般要做定时任务或者轮询,不然就只能等前端请求才能给回应。

这里用的第三方软件:友盟推送http://www.umeng.com/

友盟里的集成文档已经说的很清楚了。这里只谈Java sdk的集成

先下载sdkhttp://dev.umeng.com/push/ios/%E6%9C%8D%E5%8A%A1%E7%AB%AF%E4%BB%A3%E7%A0%81%E8%B0%83%E7%94%A8%E7%A4%BA%E4%BE%8B





前面的步骤跟着友盟推送的文档做就可以了,(先注册友盟账号)友盟里设置应用获取appkey和app master secret

这里用iOS app示范


appkey和secret都是自动生成的,下面的服务器IP地址就是你自己的ip地址或者你项目挂的ip地址,也就是白名单

代码的话主要是demo.java文件,里面有各种形式的推送,需要说的是友盟中有两种情景,一个是测试推送,一个是正式推送,

测试推送需要在友盟端添加测试设备


device Token是IOS端获取的,具体的我不清楚,搞IOS的获取很简单。(相应的Android也有这一段)

添加好ip地址和token就可以试试测试推送了。

正式推送环境的话IOS需要上传生产证书,android不用证书,需要上传包名(这个在需要的时候就知道用在哪里了,不用刻意)。

使用过程中可能会碰到一个问题,广播推送和单播推送都OK,然而部分推送的时候友盟现有的标签可能不符合我们的要求,我们需要自己给用户打标签

java sdk中并没有集成这一接口,这让我好找了一会,最后在友盟论坛里找到了接口



具体的写法(签名,url拼凑)可以参考sdk中PushClient.java中的public String uploadContents方法

相对的还有api/tag/delete?sign=签名 api/tag/clear?sign=签名 api/tag/list?sign=签名等方法

给用户打上标签之后在友盟上需要几分钟时间才能显示。然后就可以用自己的标签给相应的用户推送消息。

另外推送策略也没有在代码中集成,我顺便加进去了IOSNotification.java





自己码的菜鸟代码,有兴趣的可以看看也可以相互交流(QQ:490639212)http://pan.baidu.com/s/1c2BrErm 密码:08p0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: