android 利用androidnp实现消息推送

利用androidnp实现消息推送

介绍:

推送:所谓的消息推送就是从服务器端向移动终端发送连接,传输一定的信息。

服务器端向Android客户端的推送,主要有三种方式:
1.客户端定时去服务端取或者保持一个长Socket,从本质讲这个不叫推送,这是去服务端拽数据。但是实现简单,主要缺点:耗电等
2.Google的C2DM,服务器在国外,不稳定。
3.XMPP协议,它是一种基于XML的传递协议,具有很强的灵活性和可扩展性。它的特点是将复杂性从客户端转移到了服务器端。
2.
XMPP协议

XMPP全称Extensible
Messaging and Presence Protocol,前身是Jabber项目,是一种以XML为基础的开放式即时通讯协议。XMPP因为被Google Talk和网易泡泡应用而被广大网民所接触。XMPP的关键特色是,分散式的即时通讯系统,以及使用XML串流。XMPP目前被IETF国际标准组织完成了标准化工作。

Android
push notification(androidpn) 是一个基于XMPP协议的java开源实现,它包含了完整的客户端和服务器端。该服务器端基本是在另外一个开源工程openfire基础上修改实现的。

实现步骤:

1、下载

androidpn-demoapp-0.5.0.zip(官方客户端Demo)

http://nchc.dl.sourceforge.net/project/androidpn/androidpn-demoapp/androidpn-demoapp-0.5.0.zip

androidpn-client-0.5.0.zip(可修改客户端)

http://nchc.dl.sourceforge.net/project/androidpn/androidpn-client/androidpn-client-0.5.0.zip

androidpn-server-0.5.0-bin.zip(androidpn服务器)

http://ncu.dl.sourceforge.net/project/androidpn/androidpn-server/androidpn-server-0.5.0-bin.zip

2、点击C:\Users\PC\Downloads\androidnp\androidpn-server-0.5.0\bin中的run.bat,进入自动安装

安装成功(再次打开还是要run.bat)

3、在Eclipse中导入androidpn-client-0.5.0,提醒无法导入。解决方法:拷贝到workspace再次导入。

4、在/androidpn-demoapp/res/raw/androidpn.properties修改你服务器的IP如192.168.114

5、在Eclipse中Android导入androidpn-demoapp-0.5.0,运行项目出错

解决方法:错误原因代码依赖于其他库,需要在具体project上右键属性,在java build path里的order and export里把要编译的asmack包文件前打勾。然后再clean该工程,刷新再运行就可以了。

再次运行,显示成功

也可以单个推送:

学员资料:http://www.cnblogs.com/hanyonglu/archive/2012/03/04/2378971.html

时间: 2024-08-06 22:01:04

android 利用androidnp实现消息推送的相关文章

android利用WebSocket实现消息推送

1.webSocket服务端的配置与代码: (1).服务器端工程目录结构: (2).web.xml的配置 <servlet-name>webSocketServlet</servlet-name>        <servlet-class>com.cn.controller.WebSocketServletService</servlet-class>      </servlet>    <servlet-mapping>    

Android 基于Netty的消息推送方案之概念和工作原理(二)

上一篇文章中我讲述了关于消息推送的方案以及一个基于Netty实现的一个简单的Hello World.为了更好的理解Hello World中的代码,今天我来解说一下关于Netty中一些概念和工作原理的内容,假设你认为本篇文章有些枯燥.请先去阅读<Android 基于Netty的消息推送方案之Hello World(一)> ChannelEvent Netty是基于事件驱动的,就是我们上文提到的.发生什么事.就通知"有关部门". 所以.不难理解.我们自己的业务代码中,一定有跟这

Android 基于Netty的消息推送方案之对象的传递(四)

在上一篇文章中<Android 基于Netty的消息推送方案之字符串的接收和发送(三)>我们介绍了Netty的字符串传递,我们知道了Netty的消息传递都是基于流,通过ChannelBuffer传递的,那么自然,Object也需要转换成ChannelBuffer来传递.好在Netty本身已经给我们写好了这样的转换工具.ObjectEncoder和ObjectDecoder,下面我们介绍一个案例. 1. 我们构造一个用来传输的对象(JavaBean) [java] view plaincopy

Android 基于Netty的消息推送方案之字符串的接收和发送(三)

在上一篇文章中<Android 基于Netty的消息推送方案之概念和工作原理(二)> ,我们介绍过一些关于Netty的概念和工作原理的内容,今天我们先来介绍一个叫做ChannelBuffer的东东. ChannelBuffer Netty中的消息传递,都必须以字节的形式,以ChannelBuffer为载体传递.简单的说,就是你想直接写个字符串过去,对不起,抛异常.虽然,Netty定义的writer的接口参数是Object的,这可能也是会给新上手的朋友容易造成误会的地方.Netty源码中,是这样

Jpush之如何利用HttpClient实现消息推送到手机

开心一笑 [1.再逼我,再逼我就装死给你看. 2.打死我也不说,你还没使美人儿计呢. 3.帅有个P用?搞不好还不是被卒子给吃掉. 4.别紧张,我不是什么好人. 5.够不着吧,左脚踩右脚上试试. 只为逗你一笑] 提出问题 后端如何利用Jpush极光推送消息到手机端??? 解决问题 Jpush极光文档官网 http://docs.jiguang.cn/jpush/guideline/intro/ Jpush产品简介 JPush是经过考验的大规模APP推送平台,每天推送消息数超过5亿条. 开发者集成S

利用socket进行消息推送

对于利用socket通信进行消息推送,我研究了两三天吧,当然是在前几天研究消息推送机制以及第三方和轮询的基础上进行的,以下是我的一些感想吧,有不正确或者不完善的地方希望大家提出来一起研究吧. 1.首先,了解socket的连接过程: 1)服务器监听:2)客户端请求:3)连接确认(具体详情可以见百度百科,我在这也就不多说了). 2.socket通信机制: 服务器端 一.创建服务器套接字(CREATE). 二.服务器套接字进行信息绑定(BIND),并开始监听连接(LISTEN). 三.接受来自客户端的

Android 基于Netty的消息推送方案之Hello World(一)

消息推送方案(轮询.长连接) 轮询 轮询:比较简单的,最容易理解和实现的就是客户端去服务器上拉信息,信息的及时性要求越高则拉信息的频率越高.客户端拉信息的触发可以是一些事件,也可以是一个定时器,不断地去查询服务器.所以这个方案的弊端也是显而易见的,在轮询的频率较高时,服务器端的压力很大,通讯的流量也很大,并且大部分时间都是做的无用功. 长连接 长连接:客户端和服务端维持一个长连接,服务端在有信息推送的时候,借助这个连接把信息发送到客户端.这个方案的优点是信息推送的及时性很高,基本是实时的,并且除

Android 基于Netty的消息推送方案(一)

消息推送方案(轮询.长连接) 轮询 轮询:比较简单的,最容易理解和实现的就是客户端去服务器上拉信息,信息的及时性要求越高则拉信息的频率越高.客户端拉信息的触发可以是一些事件,也可以是一个定时器,不断地去查询服务器.所以这个方案的弊端也是显而易见的,在轮询的频率较高时,服务器端的压力很大,通讯的流量也很大,并且大部分时间都是做的无用功. 长连接 长连接:客户端和服务端维持一个长连接,服务端在有信息推送的时候,借助这个连接把信息发送到客户端.这个方案的优点是信息推送的及时性很高,基本是实时的,并且除

Android消息推送:手把手教你集成小米推送

前言 在Android开发中,消息推送功能的使用非常常见. 为了降低开发成本,使用第三方推送是现今较为流行的解决方案. 今天,我将手把手教大家如何在你的应用里集成小米推送 该文档基于小米推送官方Demo,并给出简易推送Demo 看该文档前,请先阅读我写的另外两篇文章: 史上最全解析Android消息推送解决方案 Android推送:第三方消息推送平台详细解析 目录 1. 官方Demo解析 首先,我们先对小米官方的推送Demo进行解析. 请先到官网下载官方Demo和SDK说明文档 1.1 Demo