zoukankan      html  css  js  c++  java
  • Android Server Push

    转自:http://www.juapk.com/thread-2834-1-1.html

    项目说明:采用MQTT协议实现Android推送
    消息传输协议:IBM的MQTT协议 JAR包地址:下载
    服务器安装:IBM的 RSMB 下载(MQTT协议代理)
    PHP服务器端使用的是:SAM 针对MQTT写的PHP库 (下载链接为Tokudu PHPMQTT通信项目),其中send_mqtt.php是一个通过POST接收消息并且通过SAM将消息发送给RSMB的PHP脚本。
    ANDROID 客户端的消息PUSH DEMO 下载

    Server 
    1.首先你需要安装apache php运行环境,网上有现成的集成的安装环境。 
    apache php环境安装好后将tokudu-PhpMQTTClient-ba4e494.zip解压至webroot目录下,然后启动apache服务 
    2.如果你是windows 环境在服务器端再启动 rsmb_1.2.0.zipwindowsorker.exe (我一开始客户端始终连接不上服务器就是因为这个服务没有开) 
    3.Client 
    tokudu-AndroidPushNotificationsDemo-ea18b09.zip okudu-AndroidPushNotificationsDemo-ea18b09srccom okududemoPushService.java 
    line 38 
    private static final String MQTT_HOST = "209.124.50.174"; (修改成你的服务器端ip) 

    好了就这三步,MQTT的环境就配置好了,然后重新编译客户端的程序并且安装手机或者模拟器中。再在服务器端查看,你会看见server status 变成online了,那就表明客户端连接成功。然后就可以向客户端发送消息了。 
    点击“Start Push Service”按钮即可开启推送服务。这时我们可以看到rsmb的服务日志中打出以下提示:
    20120823 113742.297 CWNAN0033I Connection attempt to listener 1883 received from client tokudu/9774d56d682e549c on address 192.168.28.39:3345
    其中的“9774d56d682e549c”就是对应的客户端ID号。

    4、发送服务准备
    b> 修改etc/config.php中推送服务端的IP地址和端口号,即MQTT_SERVER_HOST和MQTT_SERVER_POST常量。
    c> 打开对应的URL地址,就可以看到发送服务的界面,实际上就是向对应的推送客户端推送消息。
    接着,我们在该界面中填入客户端ID(9774d56d682e549c)和推送消息(test)并点击“Send Push Message”按钮,服务端就可以向客户端推送消息了。我们看到,客户端上立马就可以收到刚刚推送的消息,如下图。如果客户端没有保持连接,发送的消息就会被丢弃。不过,我们可以利用MQTT协议开发出更强大的服务端来替代rsmb,更可以加入队列、缓存等功能进行优化,有兴趣的朋友不妨试试。可参考开源项目Mosquitto(http://mosquitto.org/
    php推送在线地址 http://tokudu.com/demo/android-push/
    PhpMQTTClient 下载
    AndroidPushNotificationsDemo下载

  • 相关阅读:
    很好的理解遗传算法的样例
    基于注解Spring MVC综合Hibernate(需要jar包,spring和Hibernate整合配置,springMVC组态,重定向,)批量删除
    Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
    运行时间(Java版本)—转换毫秒到时分秒日期
    提高团队代码质量
    do...while(0)神奇
    "错: void 值不被忽略,因为预期"解决
    [全国首发]Swift视频教程
    CSS3新功能简要
    Android物业动画研究(Property Animation)彻底解决具体解释
  • 原文地址:https://www.cnblogs.com/shanmao/p/3575210.html
Copyright © 2011-2022 走看看