您的位置:首页 > 其它

极光推送的使用过程

2016-04-13 17:58 260 查看

推送功能在手机应用开发中越来越重要,几乎成为所有App必备的功能,由于Android本身没有消息推送机制,通常采用的是基于XMPP协议的推送,但这种开发很麻烦,因此在市场上应运而生了提供消息推送服务的诸多产品,例如:百度云、个推、极光等。

  极光推送正是一个整合了Android推送、iOS推送的统一推送服务平台。下面杰瑞教育的老师为大家讲解一下如何使用极光实现消息推送应用,并重点讲解一下如何实现向分组发送消息及推送服务端和自身应用集成,具体实现过程如下:

注册应用

  1. 1

    进入官网

       首先进入官网首页注册账号

  2. 2

    注册应用

      登录到用户平台,点击创建应用如图所示:

  3. 3

     包名:创建应用项目的基础包,单击创建,产生应用信息如图所示:

    END

环境搭建

  1. 1

    SDK下载

       下载 JPUSH Android – SDK。

  2. 2

    导入SDK开发包

      复制 libs/jpush-sdk-release1.x.y.jar 到工程 libs/ 目录下

      复制 libs/armeabi/libjpush.so 到工程 libs/armeabi 目录下

  3. 3

    配置AndroidManifest.xml

        详细请参照官网文档中说明进行配置

  4. 4

    测试是否成功

       集成完成后,JPush  提供的推送服务是默认就已经开启,这时客户端就可以接收到来自服务的消息了,可通过登录到JPush用户平台,发送通知测试集成是否成功

       如图所示,如终端收到消息说明集成成功

    END

Android端开发,实现向指定人员推送消息

  1. 1

      集成成功之后,服务端发送消息会被所有的安装应用的客户端所接收,我们再继续看看如何在应用中向指定的人群进行消息推送?

    要指定向某一个特定的人,或者某一群特定的人,则相对复杂。因为对于 JPush 来说,某一个人就是一个注册ID,这个注册ID与开发者App没有任何关系,或者说对开发者App是没有意义的。

      如果要对开发者App有意义的某个特定的用户推送消息,则需要:把 JPush 注册用户与开发者App 用户绑定起来。我们可以使用别名与标签的功能

  2. 2

    设置别名(alias)

      为安装了应用程序的用户,取个别名来标识。以后给该用户 Push 消息时,就可以用此别名来指定。每个用户只能指定一个别名。同一个应用中,尽可能为每个客户端用户标识唯一名称,以便服务端能通过该名称来唯一确定用户。

      调用JPushInterface方法:

    public static void setAlias(Context context, String alias,  TagAliasCallback callback)

  3. 3

    如下所示:

  4. 4

    设置标签(tag)

       标签实质就是将应用客户根据应用的需要按类别进行分组,服务端可以组为单位来批量下发 Push 消息,这样组内客户端所有用户都可以收到该消息。一个用户可以打多个标签,标签没有唯一性要求。

      调用JPushInterface方法:

    public static void setTags(Context context, Set<String> tags,TagAliasCallback callback)  

  5. 5

    同时设置组和标签

      也可调用JPushInterface的setAliasAndTags方法同时设置别名和标签,方法如下:

    public static void setAliasAndTags(Context context, String alias,  Set<String> tags, TagAliasCallback callback)  

  6. 6

    案例实现:

      下面代码实现为登录的学生设置别名和标签,别名为其学号,每个用户有两个标签分别是所属班级和所属专业,user是用户登录成功后的信息

    END

开发消息推送服务端

  1. 环境搭建

    1.下载服务端SDK

      

    2.在项目中加入jar包

  2. 服务端实现步骤

    1.创建JPushClient

    JPushClient jpushClient = new  20000 JPushClient(masterSecret, appKey, 3);  

    2.构建一个PushPayload对象(推送对象)

      确定推送消息的目标,包括推送的平台(Android、IOS)、消息内容和目标(所有人、别名、标签),构建简单的推送对象:向所有平台,所有人,推送内容为 content 的通知。

  3. 推送消息

    PushResult result=jpushClient.sendPush(payload);  

      应用客户推送消息

        参数:payload 即第二步创建的推送对象

        返回值:PushResult 表示服务端推送结果

      包含下列数据:

           msg_id:返回推送消息的id

  4. 服务端代码实现

    1.编写MessagePush组件封装消息推送方法

  5. JSP页面

        主要是设计表单将数据提交给MessagePushServlet,这里页面代码就不附加了

  6. 编写Servlet


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: