AndroidPn推送测试

服务器搭建好了之后,往客户端推送。按照里面自带的一个client,可以分别在模拟器和真机上分别测试,不过由于这个框架真的不是很完善,会遇到各种问题。

(1)

其中还遇到了一个安卓模拟器的问题,启动模拟器的时候,会一直等待,等待很久后失败。是因为直接在eclipse中启动的原因,所以先在sdk中运行一下SDK Manager,创建一个模拟器,然后再启动就ok了。

(2)

模拟器中跑这个客户端程序,要注意一点,把lib修改为libs,是因为adt版本升级的原因,不然的话,会造成找不到类ClassNotFound的错误。

本机模拟器调试,配置:

apiKey=1234567890

xmppHost=10.0.2.2

xmppPort=5222

局域网的话,host就是服务器在局域网的ip。公网就是公网的ip了。

(3)

基本在模拟器不会出什么问题,然后就是在真机。这个问题很奇特,目前准备研究一下。

真机可以连接服务器,但是接受不到推送,这个不是配置的原因了。是那个客户端代码有问题。

解决方法是:

在NotificationService类中修改 public static final String SERVICE_NAME = "abc"; 然后在注册文件中注册服务中:<action android:name="abc" />。就可以了。

有人怀疑是service name不可以太长,原来的是有点长。安卓这个,接触比较少,暂时还不了解。

修改之后,真机也可以接受到推送信息了,但是服务器的控制台会报一个错误,但是 不影响推送,具体原因要等研究之后再确定了。

报错内容:

<org.androidpn.server.xmpp.net.XmppIoHandler> : java.lang.NoClassDefFoundError: Could not initialize class org.androidpn.server.xmpp.ssl.SSLConfig

原文地址:https://www.cnblogs.com/juepei/p/3899274.html