安卓消息推送服务解决方案

MQTT简介

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和致动器(比如通过Twitter让房屋联网)的通信协议。
 
服务器和客户端搭建
 
  1. 首先解压mosquitto.rar到任意位置。最好路径简单点。我的是H:Program Filesmosquitto
  2. 运行mosquitto.exe
  3. 运行cmd ,运行 H:Program Filesmosquitto>mosquito_sub –t bing –t userName注册服务
  4. 重新打开一个CMD,运行H:Program Filesmosquitto>mosquito_pub –t username –m 推送测试  (注意空格)
  5. 此时第一个cmd内会出现“推送测试”。
  6. 这就是整个推送过程。下面的问题是怎样把推送整合到android里面去。
 

(以下操作手机要与电脑处于同一局域网,电脑作为服务器)

(以上过程有问题的话,说明我的教程有问题,不用继续下去了)

  1. 新建android项目
  2. 导入httpmime-4.1.3.jar和wmqtt.jar。
  3. AndroidManifest.xml里注册网络,即
    <uses-permission android:name="android.permission.INTERNET" />。

10. 把PushService.java添加到工程中。(里面有错,自己改一下)

11. AndroidManifest.xml里注册service,即
<service android:name="org.i.ryze.push.PushService" />(这是我的绝对路径,你们自便)

然后就是随便找个地方运行这句代码。
PushService.actionStart(this, "10.1.1.183", 1883, "hz_bgning");
      /**

       * @param this  Context

       * @param 10.1.1.183  服务器ip

       * @param 1883  端口号(默认1883就可以了)

       * @param hz_bgning  (注册推送服务的注册userName)

 */

12. 运行mosquitto.exe

13. 运行àcmdàH:Program Filesmosquitto>mosquito_pub –t  token/userName –m 开始推送 (注意,这个比上面的多了token/ ,注意)

14. 这时你的android手机就会接收到推送了。

15. 更简单更完善,支持客户端推送的代码稍后奉上。

相关文档和代码下载

原文地址:https://www.cnblogs.com/jinqi79731/p/3403485.html