androidpn-server笔记及BUG修改

简介: 上篇讲了androidpn的client端,这篇该讲一下我使用androidpn-server端的笔记了。 这里我使用的androidpn是tomcat版的,由不知哪位大神移植并修复了部分bug的版本。

上篇讲了androidpn的client端,这篇该讲一下我使用androidpn-server端的笔记了。

这里我使用的androidpn是tomcat版的,由不知哪位大神移植并修复了部分bug的版本。地址在:https://github.com/msdx/androidpn/tree/master/androidpn-server-bin-tomcat。直接在eclipse-j2ee中导入就可以了。

在我fork的这个项目里,我主要修改了一点小问题。

1、客户端断网或关机时,服务端session没关闭的问题。

参照网上的方法,修改了org/androidpn/server/xmpp/net/XmppIoHandler.java的sessionCreated方法,添加了一句:

session.getConfig().setIdleTime(IdleStatus.BOTH_IDLE, 180);
见:https://github.com/msdx/androidpn/commit/1d654a8459648273df1a1654a5e8d8d7ff37d770

2、log文件名的拼写错误。

这个是在resources/log4j.xml中配置中,把<param name="File" value="../logs/adnroidpn.log" />改为<param name="File" value="../logs/androidpn.log" />即可。

不过后来为了把它的log与tomcat的log区分开来,我又配置为把它们放在logs/androidpn的文件夹里。修改见:https://github.com/msdx/androidpn/commit/77671ad66f299fbbe0991fece190ed67109b05b0和https://github.com/msdx/androidpn/commit/a661180d169112ea41606ea7ef6c7d59286e5cc6。

3、增加离线消息发送和回执处理。此处代码修改较多:https://github.com/msdx/androidpn/commit/e41f3b069f63fb571844424498787ffb3ae67c94

此版本的server需对应有发送回执功能的客户端,否则会导致服务端每次收到心跳包都会下发它认为对方没有收到的消息(由于客户端未能发给它回执)。客户端见我另一个项目的更新:APNBB

目录
相关文章
|
关系型数据库 MySQL PHP
Window Server studyPro部署php环境mysql数据库配置遇见的问题
Window Server studyPro部署php环境mysql数据库配置遇见的问题
87 1
|
IDE 应用服务中间件 程序员
如何删除 eclipse 中多余的 Tomcat server?为什么产生这种 bug?
如何删除 eclipse 中多余的 Tomcat server?为什么产生这种 bug?
328 0
|
Linux 测试技术
软件测试Linux面试题:三种查看server.log的文件内容
软件测试Linux面试题:三种查看server.log的文件内容
430 0
|
Apache PHP Windows
PHP面试题:windows平台, Apache Http Server启动失败, 排错思路是什么?
PHP面试题:windows平台, Apache Http Server启动失败, 排错思路是什么?
144 0
visualsvn server 提交修改日志
修改日志时遇到以下错误: Repository has not been enabled to accept revision propchanges;ask the administrator to create a pre-revprop-change hook 解决办法如下: 同一,在某个库的属性页面的Hooks选项卡下找到Pre-revision property change hook,双击修改其内容。
1920 0
|
SQL Java 数据库
window下Jira+SQL Server部署+汉化+破解(亲测2018.5)
网上很多都是jira+mysql部署的文章,由于我现在有需求要用SQL Server数据库,因此就动手试了一下,参考网上许多文章,再加上自己的几次尝试,很快也成功了,分享出来。 全文章节: 一、事前准备 二、安装JIRA 三、汉化和破解 一、事前准备 1.
3035 0
|
监控 关系型数据库 MySQL