资讯专栏INFORMATION COLUMN

使用“个推”实现手机应用的消息推送

megatron / 2790人阅读

摘要:发送推送手机端安装完成后,在个推网站中就可以为应用发送推送了。简单来说,就是在个推登记应用复制关键字到的打包应用个推发送。

写在前面

这段时间,使用HTML5+和MUI开发了一个手机应用。说实话DCloud组织的技术和文档着实不够完善,但是自己一直也是边踩边填、踉踉跄跄地做完了这个手机应用。工作之余,也总结一下问题和踩过的坑,希望能够给后来者一些启发。

最初的困惑

我们每天使用手机,总会收到许多的手机消息,如图

对于一个刚开始接触移动开发的小白来说,感觉无从入手。在DCloud论坛上也找到了一些资料,有一篇比较详尽文章推送插件开发指南,同时也参考了HTML5+上的PUSH文档。当时看完文章之后依然非常困惑,也就先抛开这些直接去个推网站了解究竟。看到个推网站中有个3分钟快速集成演示然后就跟着做了,没想到非常容易了就是实现了推送功能。

快速实现推送

紧接着自己又读了一下论坛上的文章,并跟着去做,最终实现了为自己开发的应用添加推送功能。具体流程如下:

登记应用
登录个推网站,然后在点击“登记应用”,这里有个“应用标识”,使用Hbuilder打包的应用并没有根据它提示的方法获取到,后来才了解到打包的时候已经自动生成了应用标识(包名)如图所示:

记录关键字
登记完成后个推网站就会自动生成AppID、AppSecret、AppKey和MasterSecret关键字。
然后将这些关键字复制到manifest.json中的推送SDK配置,然后再去打包APP。

发送推送
手机端安装完成APP后,在个推网站中就可以为应用发送推送了。如果没能收到推送,建议多看论坛中的文章推送插件开发指南多试几次。简单来说,就是在个推登记应用-->复制关键字到PUSH的SDK-->打包应用-->个推发送

服务端发送推送

虽然实现了为APP发送推送的功能,但是这里的推送都是个推网站发起的,肯定不能广泛应用。因此,我趁热打铁跟着个推提供的文档Java发送个推走下来。不过,文档中的java代码只是一个简单的测试,如果想真正的将推送发出来,还需要修改一下服务端的代码。这里我将原来的代码改成servlet,然后部署到Tomcat,本地请求这个servlet。这样在同一网络中的手机端即可以接受到推送的消息了。
servlet代码:
`

public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    String appId = "NXX3CdM3wh61ec4fgUIQw";
    String appKey = "SdxEqvoCXZ8bqmumEllS18";
    String masterSecret = "eZ9VjHczaZ6KnRGIniV3r3";
    String url = "http://sdk.open.api.igexin.com/apiex.htm";
    IGtPush push = new IGtPush(url, appKey, masterSecret);

    // 定义"点击链接打开通知模板",并设置标题、内容、链接
    LinkTemplate template = new LinkTemplate();
    template.setAppId(appId);
    template.setAppkey(appKey);
    template.setTitle("欢迎使用个推!");
    template.setText("这是一条推送消息~");
    template.setUrl("http://getui.com");
    List appIds = new ArrayList();
    appIds.add(appId);

    // 定义"AppMessage"类型消息对象,设置消息内容模板、发送的目标App列表、是否支持离线发送、以及离线消息有效期(单位毫秒)
    AppMessage message = new AppMessage();
    message.setData(template);
    message.setAppIdList(appIds);
    message.setOffline(true);
    message.setOfflineExpireTime(1000 * 600);

    IPushResult ret = push.pushMessageToApp(message);
    System.out.println(ret.getResponse().toString());
}

`

最后

如果想深入了解推送的内容,还是要学习个推的文档和HTML5+文档。
希望本文能对你有所帮助!

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/55596.html

相关文章

  • 使用个推实现手机应用消息推送

    摘要:发送推送手机端安装完成后,在个推网站中就可以为应用发送推送了。简单来说,就是在个推登记应用复制关键字到的打包应用个推发送。 写在前面 这段时间,使用HTML5+和MUI开发了一个手机应用。说实话DCloud组织的技术和文档着实不够完善,但是自己一直也是边踩边填、踉踉跄跄地做完了这个手机应用。工作之余,也总结一下问题和踩过的坑,希望能够给后来者一些启发。 最初的困惑 我们每天使用手机,总...

    Wildcard 评论0 收藏0
  • 使用个推实现手机应用消息推送

    摘要:发送推送手机端安装完成后,在个推网站中就可以为应用发送推送了。简单来说,就是在个推登记应用复制关键字到的打包应用个推发送。 写在前面 这段时间,使用HTML5+和MUI开发了一个手机应用。说实话DCloud组织的技术和文档着实不够完善,但是自己一直也是边踩边填、踉踉跄跄地做完了这个手机应用。工作之余,也总结一下问题和踩过的坑,希望能够给后来者一些启发。 最初的困惑 我们每天使用手机,总...

    ky0ncheng 评论0 收藏0
  • TOP100summit:【分享实录-封宇】58到家多端消息整合之路

    摘要:封宇到家架构师。主要负责到家消息系统以及门户等公司战略级产品研发。消息服务器收到拉取离线消息请求,表明端已经收到之前的数据。统一消息推送通道,整合个推米推微信短信等消息推送方式,尽最大可能确保消息送达用户。 本篇文章内容来自2016年TOP100summit 58到家架构师封宇的案例分享。编辑:Cynthia2017年11月9-12日北京国家会议中心第六届TOP100summit,留言...

    googollee 评论0 收藏0
  • Android我还可以相信你多少系列文章一之推送

    摘要:于是演变出了很多变种,每个厂家自研一套,比如小米,华为都是对外公开。根据我们的经验同时接入小米和华为,在华为手机上面走华为推送,在其他手机上面走小米推送。还要警惕的是,接入推送之后有可能存在消息延迟,这完全依赖于推送服务提供商的后台服务。 我即将在2017.7.8号开一个直播讲堂,感兴趣的同学点击快来参加吧:https://segmentfault.com/l/15...内容包括: ...

    seanlook 评论0 收藏0
  • iOS APNs实战分享

    摘要:对象离线下发个推的透传消息,发送推送消息。更换证书这种方案是在发布时重新上传生产证书,注意个推的证书更换后需要分钟左右生效,这种方案需要注意在之后版本更新开发时,需要申请新的个推,不然会影响在线的客户。 showImg(https://segmentfault.com/img/bV8riL?w=800&h=444); 序言: 因为App的功能需要,最近一直在调研苹果的APNs推送,开始...

    BigTomato 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<