论坛首页 移动开发技术论坛

用androidpn来实现推送

浏览 218402 次
精华帖 (0) :: 良好帖 (4) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-04-17  
貌似下载不了哦,网盘地址失效
0 请登录后投票
   发表时间:2012-04-17   最后修改:2012-04-17
595755330 写道
貌似下载不了哦,网盘地址失效

加群:210555217

下图为部分群共享资料.

  • 大小: 17.1 KB
0 请登录后投票
   发表时间:2012-04-18  
感谢楼主,现在正要做这个安卓的推送消息,正是乱得一塌糊涂,你的帖子为我解惑不少
0 请登录后投票
   发表时间:2012-04-24  
正在做一个推送服务的功能。需要解决推送机制。
请问一下lz。
你的整合方式是什么样的?是直接将apn融入自己项目,还是将apn作为一个单独的播发服务器存在?
我希望能够融进自有系统,这样在调用时将非常方便,且单独作为播发服务器存在的apn和自有系统间的通信可能将成为效率瓶颈。
另外还有个问题你们的推送方式是什么样的?能讲解一下吗?比如当周末上午固定一段时间推送,当用户在线时自然能收到信息,但用户不在线时怎样能保证其上线后能收到该信息。另外该等待队列也需要有个时间限制,否则某用户长时间不在线,一旦上线,将遭受无数推送信息的轰炸,流量瞬间用光。这个怎么弄?对于等待队列的解决方法,我没做过,不知道该怎么设计?
0 请登录后投票
   发表时间:2012-04-24  
leo_soul 写道
正在做一个推送服务的功能。需要解决推送机制。
请问一下lz。
你的整合方式是什么样的?是直接将apn融入自己项目,还是将apn作为一个单独的播发服务器存在?
我希望能够融进自有系统,这样在调用时将非常方便,且单独作为播发服务器存在的apn和自有系统间的通信可能将成为效率瓶颈。
另外还有个问题你们的推送方式是什么样的?能讲解一下吗?比如当周末上午固定一段时间推送,当用户在线时自然能收到信息,但用户不在线时怎样能保证其上线后能收到该信息。另外该等待队列也需要有个时间限制,否则某用户长时间不在线,一旦上线,将遭受无数推送信息的轰炸,流量瞬间用光。这个怎么弄?对于等待队列的解决方法,我没做过,不知道该怎么设计?

这玩意自身只是实现了推送,服务器端用的mina,至于一些逻辑完全可以根据自己的需要来实现。。比如失败的话尝试三次,比如只保留3天等等,想和自身的系统整合在一起也有不好的地方,比如推送占的是系统的端口,当然,想整合还是可以整合在一起的,spring配置文件引入自己的web项目中就Ok了。
0 请登录后投票
   发表时间:2012-04-24   最后修改:2012-04-24
Jclick 写道
leo_soul 写道
正在做一个推送服务的功能。需要解决推送机制。
请问一下lz。
你的整合方式是什么样的?是直接将apn融入自己项目,还是将apn作为一个单独的播发服务器存在?
我希望能够融进自有系统,这样在调用时将非常方便,且单独作为播发服务器存在的apn和自有系统间的通信可能将成为效率瓶颈。
另外还有个问题你们的推送方式是什么样的?能讲解一下吗?比如当周末上午固定一段时间推送,当用户在线时自然能收到信息,但用户不在线时怎样能保证其上线后能收到该信息。另外该等待队列也需要有个时间限制,否则某用户长时间不在线,一旦上线,将遭受无数推送信息的轰炸,流量瞬间用光。这个怎么弄?对于等待队列的解决方法,我没做过,不知道该怎么设计?

这玩意自身只是实现了推送,服务器端用的mina,至于一些逻辑完全可以根据自己的需要来实现。。比如失败的话尝试三次,比如只保留3天等等,想和自身的系统整合在一起也有不好的地方,比如推送占的是系统的端口,当然,想整合还是可以整合在一起的,spring配置文件引入自己的web项目中就Ok了。


关于整合,明白你的意思了。我已经下载源码了,一会儿看看估计能搞到一起去。占用端口是肯定的了,不过关系不大。
另外你说的失败尝试3次,只保留3天这种该怎么解决?用户不在的时候保留信息等待其上线后在推送,这个又怎么解决?我比较糊涂这个
0 请登录后投票
   发表时间:2012-04-24  
leo_soul 写道
Jclick 写道
leo_soul 写道
正在做一个推送服务的功能。需要解决推送机制。
请问一下lz。
你的整合方式是什么样的?是直接将apn融入自己项目,还是将apn作为一个单独的播发服务器存在?
我希望能够融进自有系统,这样在调用时将非常方便,且单独作为播发服务器存在的apn和自有系统间的通信可能将成为效率瓶颈。
另外还有个问题你们的推送方式是什么样的?能讲解一下吗?比如当周末上午固定一段时间推送,当用户在线时自然能收到信息,但用户不在线时怎样能保证其上线后能收到该信息。另外该等待队列也需要有个时间限制,否则某用户长时间不在线,一旦上线,将遭受无数推送信息的轰炸,流量瞬间用光。这个怎么弄?对于等待队列的解决方法,我没做过,不知道该怎么设计?

这玩意自身只是实现了推送,服务器端用的mina,至于一些逻辑完全可以根据自己的需要来实现。。比如失败的话尝试三次,比如只保留3天等等,想和自身的系统整合在一起也有不好的地方,比如推送占的是系统的端口,当然,想整合还是可以整合在一起的,spring配置文件引入自己的web项目中就Ok了。


关于整合,明白你的意思了。我已经下载源码了,一会儿看看估计能搞到一起去。占用端口是肯定的了,不过关系不大。
另外你说的失败尝试3次,只保留3天这种该怎么解决?用户不在的时候保留信息等待其上线后在推送,这个又怎么解决?我比较糊涂这个



仔细看看后台源码,如果有web开发经验的话,很容易看懂的。。
0 请登录后投票
   发表时间:2012-04-25  
嗯 好的,正在搞。看你的留言 关于之前有人提过的 服务端断线 客户端也需要重启才能连接的问题 有好的解决办法了吗?还有我想问一下 如果有大量消息要发送,那么消息排队 和 阻塞处理 是怎么做的?因为我们这里1期预计会有300万用户。
0 请登录后投票
   发表时间:2012-04-25  
leo_soul 写道
嗯 好的,正在搞。看你的留言 关于之前有人提过的 服务端断线 客户端也需要重启才能连接的问题 有好的解决办法了吗?还有我想问一下 如果有大量消息要发送,那么消息排队 和 阻塞处理 是怎么做的?因为我们这里1期预计会有300万用户。


加群:210555217
共享里有,解决了重连、离线消息、回执等功能的版本。
0 请登录后投票
   发表时间:2012-04-26  
楼主大人:
     你的服务端部署到Linux的tomcat6下运行的时候报错误了。郁闷。在windowXp下面是可以正常运行的,Linux下连接数据库也是没有问题的。
javax.servlet.ServletException: Servlet.init() for servlet dispatcher threw exception
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1247)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:827)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'urlMapping' defined in ServletContext resource [/WEB-INF/dispatcher-servlet.xml]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userController' defined in ServletContext resource [/WEB-INF/dispatcher-servlet.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.androidpn.server.console.controller.UserController]: Constructor threw exception; nested exception is java.lang.NullPointerException
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:480)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:402)
at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:316)
at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:282)
at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:126)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1206)
... 11 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userController' defined in ServletContext resource [/WEB-INF/dispatcher-servlet.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.androidpn.server.console.controller.UserController]: Constructor threw exception; nested exception is java.lang.NullPointerException
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:883)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:839)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:880)
at org.springframework.web.servlet.handler.AbstractUrlHandlerMapping.registerHandler(AbstractUrlHandlerMapping.java:297)
at org.springframework.web.servlet.handler.SimpleUrlHandlerMapping.registerHandlers(SimpleUrlHandlerMapping.java:129)
at org.springframework.web.servlet.handler.SimpleUrlHandlerMapping.initApplicationContext(SimpleUrlHandlerMapping.java:103)
at org.springframework.context.support.ApplicationObjectSupport.initApplicationContext(ApplicationObjectSupport.java:119)
at org.springframework.web.context.support.WebApplicationObjectSupport.initApplicationContext(WebApplicationObjectSupport.java:69)
at org.springframework.context.support.ApplicationObjectSupport.setApplicationContext(ApplicationObjectSupport.java:73)
at org.springframework.context.support.ApplicationContextAwareProcessor.postProcessBeforeInitialization(ApplicationContextAwareProcessor.java:70)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:350)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1331)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
... 28 more
Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.androidpn.server.console.controller.UserController]: Constructor threw exception; nested exception is java.lang.NullPointerException
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:115)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:61)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:877)
... 49 more
Caused by: java.lang.NullPointerException
at org.androidpn.server.xmpp.XmppServer.getBean(XmppServer.java:122)
at org.androidpn.server.service.ServiceLocator.getUserService(ServiceLocator.java:47)
at org.androidpn.server.console.controller.UserController.(UserController.java:42)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
... 51 more
0 请登录后投票
论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics