AndroidPn消息推送
接着前面的工作,消息接收之后,要推送给不同的客户端。关于消息推送,网上有很多方式,http长连接,xmpp协议,还有一个谷歌的貌似叫C2DM的东西。
在此之前,用openfire做了一个小demo,例子是在网上找到的。也可以实现和AndroidPn差不多的一些功能,包括点对点,广播消息,反正都是xmpp协议的。
客户端是安卓的,所以,用androidpn。
这个东西是韩国人写的,官方文档也都是韩文(呵呵)。
(一)运行源码
源码是用myeclipse编译的,在eclipse里面,要处理一下,属性有个project facets,修改一下。也可以新建一个web工程,把原来eclipse里面的东西拷贝过来,不过比较麻烦。本人采用的就是这种麻烦的方式,不管怎么样,这样自己建立的工程,比较干净。
其中,会有几个注意事项,首先是数据源的配置,这个要自己修改为自己的数据库。源码用的是hibernate连接,在配置里面,修改即可。只要数据库连接的没问题,其他一般不会报错。
然后就是跑起来的时候,有些东西会发生404,比如:

这里面的,home,users,sessions这些按钮。
因为源码用的是sitemesh的模板技术,里面的路径的地址应该是按照原myeclipse的,这个问题应该是新建项目引起的,修改一下webroot下面decorators里的default文件,将tabmenu里面的几个连接路径修改一下,去掉前面的/就好了。
(二)源码运行
当推送消息的时候,会调用NotificationManager类中的sendBroadcast或者sendNotifcationToUser方法。
这里用的是广播,里面会发一个字符串作为消息体。
在我们的项目里,就可以调用这个方法,来推送消息了。
百度文库里有一篇介绍,关于使用该源码的两个场景的配置。
http://wenku.baidu.com/link?url=qW7UPz9p3v4VyuNJJc1H7jP4QY4uBKTJtNEBhPJRhakWD_OCN2kXvTLRH0fx7fg7Xd9J-NCX_JlvgjDu-kMnQJCtk_Sgms-6QAGYcqZTFeW
主要是要注意,如果你的项目中也存在spring的话,如果也有数据源,这些bean有可能冲突。
AndroidPn消息推送的更多相关文章
- Android消息推送怎么实现?
在开发Android和iPhone应用程序时,我们往往需要从服务器不定的向手机客户端即时推送各种通知消息,iPhone上已经有了比较简单的和完美的推送通知解决方案,可是Android平台上实现起来却相 ...
- Android消息推送
1.引言 所谓的消息推送就是从服务器端向移动终端发送连接,传输一定的信息.比如一些新闻客户端,每隔一段时间收到一条或者多条通知,这就是从服务器端传来的推送消息:还比如常用的一些IM软件如微信.GTal ...
- Android消息推送完美方案[转]
转自 Android消息推送完美方案 推送功能在手机应用开发中越来越重要,已经成为手机开发的必须.在Android应用开发中,由于众所周知的原因,Android消息推送我们不得不大费周折.本文就是用来 ...
- Android消息推送完美方案
转自:http://bbs.hiapk.com/thread-4652657-1-1.html 推送功能在手机应用开发中越来越重要,已经成为手机开发的必须.在Android应用开发中,由于众所周知的原 ...
- Android消息推送完美解决方案全析
推送功能在手机应用开发中越来越重要,已经成为手机开发的必须.在Android应用开发中,由于众所周知的原因,Android消息推送我们不得不大费周折.本文就是用来和大家共同探讨一种Android消息推 ...
- Android 基于Netty的消息推送方案之Hello World(一)
消息推送方案(轮询.长连接) 轮询 轮询:比较简单的,最容易理解和实现的就是客户端去服务器上拉信息,信息的及时性要求越高则拉信息的频率越高.客户端拉信息的触发可以是一些事件,也可以是一个定时器,不断地 ...
- android系统下消息推送机制
一.推送方式简介: 当前随着移动互联网的不断加速,消息推送的功能越来越普遍,不仅仅是应用在邮件推送上了,更多的体现在手机的APP上.当我们开发需要和服务器交互的应用程序时,基本上都需要获取服务器端的数 ...
- [android] 安卓消息推送的几种实现方式
消息推送的目的:让服务器端及时的通知客户端 实现方案 轮询:客户端每隔一定的时间向服务器端发起请求,获得最新的消息 特点:如果用在最新新闻通知上,效率就有点低了,技术简单,好实现 应用场景:服务器端以 ...
- android热门消息推送横向测评![转]
关于这个话题,已经不是什么新鲜事了.对于大多数中小型公司一般都是选择第三方的服务来实现.但是现在已经有很多提供推送服务的公司和产品,如何选择一个适合自己项目的服务呢?它们之间都有什么差别?在此为大家做 ...
随机推荐
- javascript 中 if (window != top) top.location.href = location.href;的意思
如果当前窗口不是顶级窗口,就强制修改为顶级窗口: 目的是为了不让别人用iframe嵌入你的页面
- 求含有n个因子的最小正整数(n<=1000000)
题目链接:https://ac.nowcoder.com/acm/contest/331/G 思路: 根据唯一分解定理,如果一个数n可以表示成 n=p1a1*p2a2*...*pkak (pi是第i个 ...
- Hamburgers
Hamburgers http://codeforces.com/problemset/problem/371/C time limit per test 1 second memory limit ...
- 使用一般处理程序(IHttpHandler)制作图片水印
做网站的时候经常需要将图片加上网站名称的水印.这样做可以使别人转载图片的时候出现图片出处 ,利于网站宣传.但是如果利用ps来一个一个加水印工作量非常浩大,而且修改了之后就没法还原.这 篇教程教大家利用 ...
- 查看CPU序列号以及系统信息
CPU序列号 wmic cpu get processorid 现在也不唯一,比如联想同款机器,因为CPU批量生产,id也是一样 操作系统信息 systeminfo 查看硬件信息 dxdi ...
- JavaScript 中的 NaN 和 isNaN
1.NaN NaN 即 Not a Number , 不是一个数字.那么 NaN 到底是什么呢? 在 JavaScript 中,整数和浮点数都统称为 Number 类型 .除此之外,Number 类型 ...
- centos7之iptables与firewalld
保障数据的安全性是继保障数据的可用性之后最为重要的一项工作.防火墙作为公网 与内网之间的保护屏障,在保障数据的安全性方面起着至关重要的作用. firewalld与iptables iptables f ...
- 负值之美:负margin在页面布局中的应用
本文转载自:http://www.topcss.org/?p=94,有修改. 负数给人总是一种消极.否定.拒绝之感,不过有时利用负margin可以达到奇妙的效果,今天就表一表负值在页面布局中的应用.这 ...
- 【Log】logback指定配置文件(二)
通常我们在不同的环境使用不同的日志配置文件,本章讲指定logback的配置文件,如何使用logback参照[Log]logback的配置和使用(一) 写一个配置加载类,注意JoranConfigura ...
- C#打印日志的小技巧
public static void Log(params System.Object[] message) { string str = ""; if (message == n ...