【Android】基于XMAPP协议实现Android推送服务(亲测可用)
一、PC端直接运行服务器
1. 进入目录androidpn-server-0.5.0\bin,双击run.bat
2. 浏览器输入网址:http://127.0.0.1:7070/index.do
3. 将androidpn-client导入到Eclipse
4. 配置好目标平台,打开androidpn-client/res/raw/androidpn.properties文件,进行如下修改
apiKey=1234567890 xmppHost=10.0.2.2(模拟器使用该地址,真机模拟的话,则写入你PC机的IP地址) xmppPort=5222
5. 在浏览器中输入推送的消息,客户端的通知栏即可收到
6. 补充说明, 服务器端的配置属性:androidpn-server-0.5.0\conf\config.properties
apiKey=1234567890 admin.console.host=127.0.0.1 admin.console.port=7070 xmpp.ssl.storeType=JKS xmpp.ssl.keystore=conf/security/keystore xmpp.ssl.keypass=changeit xmpp.ssl.truststore=conf/security/truststore xmpp.ssl.trustpass=changeit
7. 下面演示运行效果
服务器端,输入推送的消息,点击提交按钮
客户端通知栏接收到消息
点击之后的效果图
二、源代码搭建服务器
1. 将文件夹Androidpn整个拷贝到目录D:\Program Files\Apache Software Foundation\myProject\下
2. 修改文件D:\Program Files\Apache Software Foundation\Tomcat 8.0\conf\server.xml,
在<Host></Host>之间添加如下语句
<Context path="/androidpushServer" docBase="D:\Program Files\Apache Software Foundation\myProject\Androidpn\WebRoot"/>
3. 打开mysql的客户端,使用命令在客户端中,创建数据库androidpn
create database androidpn;
4. 修改文件D:\Program Files\Apache Software Foundation\myProject\Androidpn\resources\jdbc.properties如下所示
# JDBC Configuration jdbcDriverClassName=com.mysql.jdbc.Driver #jdbcUrl=jdbc:mysql://localhost:3306/android?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull jdbcUrl=jdbc:mysql://localhost:3306/androidpn?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect jdbcUsername=root //数据库用户名 jdbcPassword= //这里要填写数据库密码 # DBCP Pool settings jdbcInitialSize=5 jdbcMaxActive=10 jdbcMaxIdle=5 jdbcMaxWait=30000 jdbcValidationQuery=select 1注意:如果不行,也同步修改D:\Program Files\Apache Software Foundation\myProject\Androidpn\WebRoot\WEB-INF\classes\jdbc.properties
5. 由于运行的工程不在Tomcat 8.0的根目录下,因此,还需要修改以下几个文件
1》D:\Program Files\Apache Software Foundation\myProject\Androidpn\WebRoot\decorators\default.jsp, 将前面的斜杠都去掉,如"/index.do",修改为"index.do" 2》D:\Program Files\Apache Software Foundation\myProject\Androidpn\WebRoot\index.jsp中, 将"/images/androidpn.png"修改为"images/androidpn.png" 3》D:\Program Files\Apache Software Foundation\myProject\Androidpn\WebRoot\WEB-INF\pages\index.jsp中, 将"/images/androidpn.png"修改为"images/androidpn.png"
6. 启动Tomcat 8.0
7. 浏览器中输入:http://localhost:8010/androidpushServer/,成功运行(注意:8010为我自己Tomcat服务器的端口号)
三、客户端和服务器端打包下载
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。