`
苗振忠
  • 浏览: 57241 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

JPush集成方案

 
阅读更多

现在的移动应用中消息推送已经成为不可或缺的功能了,这样可以增加与用户的交互。

 

使用消息推送的方法有很多,原理大致是:移动端与消息服务器保持一个长连接,一旦服务器有消息就推给客户端,客户端收到消息做相应的处理。

 

消息推送 参考的实现方式:

1、XMPP协议实现的openfire可以作为消息服务器。客户端也有asmack封装好了xmpp协议。openfire提供了一套IM所需的所有功能,而且支持插件形式的二次开发。

 

2、开源项目androidpn,也是实现了XMPP协议。

 

3、JPush极光推送。等一系列第三方的推送平台。

 

各自的优缺点:

1、openfire提供了IM的所有功能,功能非常强大,但是移动端如果只想集成消息推送的话,openfire就显得很是笨重。而且openfire的二次开发资料很少,一般需针对公司的业务开发,使用公司自己的数据库。服务器端开发成本高,周期长。openfire的并发连接好像也只有5000左右(做的比较好的情况下,一般都达不到这个数)。移动客户端也要根据xmpp协议与openfire服务器进行交互来完成消息推送。所以客户端的开发周期也长。

 

2、androidpn也是实现的XMPP,但是只实现了核心的功能,也需要针对公司的业务进行二次开发。基本和openfire的缺点差不多。

 

3、JPush集成非常简单,客户端和服务端都不需要进行二次开发,只要配置一下就可以了,最多发送消息这块服务端需要调用一下Jpush的接口,就一个http请求,非常简单。

 

客户端集成步骤:

1、首先去JPush的开发者官网https://www.jpush.cn/ 注册帐号

 

2、用刚刚的帐号登录开发者网站

 

3、点击用户头像下的控制台https://www.jpush.cn/common/apps/

 

4、创建应用。

 

5、打开开发者网站的文档选项 http://docs.jpush.cn/display/dev/Index根据里面的集成步骤集成Jpush。

 

服务端集成:

客户端集成完,我们的移动端的app就可以收到通知和消息了,但是发消息需要到Jpush的开发者网站去发送,这样的话就很不合理。正常情况肯定是我们自己的服务器根据情况发送通知和消息到客户端的。不可能我们服务端需要发通知和消息的时候需要有个人去打开Jpush的网站去发送通知。

 

这些情况Jpush已经为我们想到了,我们服务器端只要在发通知的地方调用Jpush提供的发布接口就可以了,就是一个HTTP请求而已。

 

推送接口详细描述:http://docs.jpush.cn/display/dev/Push-API-v3

 

我们可以自己写代码发送http请求,这边有一个第三方的开源项目是对Jpush推送接口的封装:https://github.com/jpush/jpush-api-java-client

下载下来将src下的cn.jpush.api文件全部复制到服务端项目中,并且将libs下的jar包加入到工程的build path。

我们就是推送一条通知或者消息。

代码样例:

  1. //这是在极光网站上申请的密钥
  2. StringmasterSecret="1c59df909c3790cc7e1fc601";
  3. //应用的appKey,同样在网站上申请
  4. StringappKey="3c92c6395227cbe166d1a853";
  5. //建立JpushClient类,用来发送消息的对象
  6. JPushClientclient=newJPushClient(masterSecret,appKey);
  7. try{
  8. //client.sendNotificationAll("helloworld");
  9. //client.sendMessageAll("thisisamessage");
  10. PushPayloadpayload=PushPayload
  11. .newBuilder()
  12. .setPlatform(Platform.android_ios())
  13. .setNotification(Notification.alert("jPushisuseful!!")).setAudience(Audience.alias("xxx"))
  14. .build();
  15. client.sendPush(payload);
  16. }catch(APIConnectionExceptione){
  17. e.printStackTrace();
  18. }catch(APIRequestExceptione){
  19. e.printStackTrace();
  20. }

 

我们一般使用cn.jpush.api.JPushClient.sendPush(PushPayload pushPayload)这个方法就够了。

 

这是推送的一个方法,参数PushPayload可以用来构造通知和消息,并且可以进行细节的设置,比如:platform,alias,tag,消息或是通知。具体可以参考JPushClient类的

sendAndroidNotificationXXXXX和sendAndroidMessageXXXXXX方法,这些方法里面就是构造一个PushPayload。

 

到此集成结束。

 

服务端集成样例:服务端样例

分享到:
评论

相关推荐

    ionic-jpush:与jpush集成的离子演示

    通过以上步骤,我们成功地将JPush集成到Ionic项目中,实现了推送服务的功能。这不仅提升了应用的交互性,也为用户带来了更加个性化的体验。在实际开发中,开发者还可以根据业务需求进一步拓展JPush的功能,如自定义...

    jpush需要的jar包

    总的来说,JPush提供了一套完整的推送解决方案,使得开发者能够轻松地向移动设备发送通知和消息。而"Maven-resources-plugin-2.5.jar"则是Maven构建系统中的一个重要组件,帮助管理项目资源和依赖。正确理解和使用...

    Jpush简单使用例子

    JPush(极光推送)是一款由极光公司提供的第三方推送服务,它为企业和开发者提供了一种高效、稳定、便捷的消息推送解决方案。通过JPush,开发者可以轻松实现对Android、iOS以及Web等多个平台的应用进行消息推送,...

    JPush Utils_极光推送_jpush推送工具_jpush_推送工具_

    - **社交平台集成**:JPush 提供与主流社交平台的集成,如微信、QQ、微博等,方便用户分享内容。 - **分享接口**:通过JShareUtil,开发者可以调用统一的分享接口,简化代码,提高开发效率。 - **分享统计**:...

    jpush-client-3.2.16

    4. 使用JPush客户端库集成步骤: - 在项目中添加JPush的依赖库,可以通过Gradle或者Maven配置方式引入。 - 初始化JPush服务,在应用启动时调用初始化方法,并注册接收器来处理推送消息。 - 配置推送设置,如设置别名...

    jpush-docs, JPush docs on official website. 极光推送官方文档。.zip

    1. **安装与集成**:JPush提供了适用于iOS、Android和Web端的SDK,详细介绍了如何在不同平台上快速集成JPush服务,包括添加依赖库、初始化配置以及处理推送事件。 2. **消息推送**:了解如何创建和发送推送消息,...

    Jpush-unity3d-plugin

    总结,Jpush-unity3d-plugin为Unity3D开发者提供了一套便捷的极光推送集成方案,通过它,开发者可以轻松地在游戏项目中实现高效的用户消息推送,提升游戏的互动性和活跃度。然而,使用过程中需要注意性能优化、错误...

    JPush iOS SDK 1.2.2

    官方文档提供了详细的错误代码和解决方案,帮助开发者快速解决集成过程中遇到的问题。 总之,JPush iOS SDK 1.2.2 是一个强大的工具,可以帮助开发者实现高效的推送服务,提升用户体验,并通过数据分析优化推送策略...

    极光 JPush android

    极光JPush是一款专业的移动端消息推送服务,它为开发者提供了高效、稳定、便捷的推送解决方案。本教程将详细阐述如何在Android平台上集成并实现极光JPush的功能。 首先,我们需要理解JPush的核心功能。JPush的主要...

    CoreJPush, 三分钟,五句代码,搞定JPush.zip

    JPush是极光推送的一款产品,它提供了一套完整的消息推送解决方案,适用于移动应用开发者,可以帮助他们实现向用户设备实时推送通知或者自定义消息。在三分钟内通过五句代码就能完成集成,表明CoreJPush具有很高的...

    Hbuilder jpush

    标题中的“Hbuilder jpush”指的是使用HBuilder开发工具集成JPush服务时遇到的问题。HBuilder是一款由DCloud(数字天堂)开发的HTML5开发工具,它提供了丰富的UI组件、强大的编辑器以及一键打包功能,使得开发者可以...

    JPush推送,利用java后台推送消息

    JPush推送服务是极光推送(JiGuang)提供的一种高效、稳定的消息推送解决方案,主要针对Android和iOS等移动平台。在这个场景中,我们关注的是如何利用Java后台来实现JPush推送消息的功能。 首先,要理解JPush的工作...

    jpush-client-3.2.7

    JPush是极光公司提供的推送服务,支持Android、iOS以及Web等多平台,提供了一整套包括消息推送、用户分群、自定义事件等功能在内的解决方案。通过JPush,开发者可以实现远程通知、自定义消息、运营活动等多种推送...

    jpush-phonegap-plugin

    【jpush-phonegap-plugin】是基于PhoneGap框架的一个插件,用于集成极光推送(JPush)服务到移动应用中。PhoneGap是一种流行的混合移动应用开发框架,它允许开发者使用HTML、CSS和JavaScript来构建跨平台的应用程序...

    JPush-SDK.zip

    极光JPush SDK是一款专为开发者设计的推送服务软件开发工具包,它集成了中国移动、中国联通、中国电信三大运营商的网关认证能力,旨在为移动应用提供便捷的一键登录和号码认证解决方案,从而提升用户的注册登录体验...

    最新jpush-api-java-client-master.zip

    极光推送的特性包括精准推送、自定义消息、统计分析等功能,是许多开发者首选的推送解决方案。 二、jpush-api-java-client概述 "jpush-api-java-client-master.zip"包含了极光推送的Java客户端SDK源码,它允许...

    jpush极光推送API

    总之,JPush极光推送API提供了一套完整的解决方案,让开发者能够高效、安全地实现跨平台的推送服务,增强用户与App的互动,提升应用的用户体验。通过熟练掌握和运用JPush API,开发者可以更好地进行消息推送管理,...

    Jpush 极光推送 的很好例子

    极光推送(JPush)是基于移动互联网的即时通讯服务,为开发者提供了一种高效、稳定、便捷的服务器向客户端推送消息的解决方案。这个“Jpush 极光推送 的很好例子”应该包含了一个完整的示例,展示了如何在Android...

    JPush的小案例

    JPush极光推送是中国知名的推送服务提供商,为开发者提供了一整套稳定高效的推送解决方案。在这个小案例中,我们将深入探讨如何使用JPush来实现基本的推送功能以及自定义推送。 首先,我们需要了解JPush的基本概念...

Global site tag (gtag.js) - Google Analytics