【问题标题】:Basic Steps for Using MQTT in android在 android 中使用 MQTT 的基本步骤
【发布时间】:2023-03-27 22:15:02
【问题描述】:

我是 Android 新手,想使用 MQTT 作为来自服务器的 Android 推送通知器。
我读过 MQTT 但不太了解。如果有人使用过这个库,请告诉我我必须做什么才能开始使用它。

我有一个 Java 服务器(在 Windows 上运行) 和许多 客户端(将安装我的应用程序的安卓手机)。我的服务器会随时向所有或某些特定客户端发送消息。

我的基本要求是什么?我的意思是那里有

  1. 服务器要求?
  2. 某种注册?
  3. 要包含在 android 中的库?
  4. Android 设备的标识符? (因为 C2DM 需要为每台设备提供 Google 帐户)

请在这方面帮助我

【问题讨论】:

    标签: android push-notification mqtt


    【解决方案1】:

    你需要:

    1. 在服务器端运行的 MQTT 代理。这可能类似于开源的 mosquitto 代理。
    2. 一个 MQTT 客户端库,您包含在您的 Android 应用程序中,使您的应用程序能够连接、订阅和发布消息。 http://mqtt.org/software 列出了许多 Java 选项
    3. 想出一种唯一标识用户或设备的方法,然后将其用作主题,以便您可以将消息单独发布到一个设备。

    Dale Lane 写了一个很好的指南 (http://www.dalelane.co.uk/blog/?p=1599),还有一组很好的关于 MQTT 的资源 (https://github.com/mqtt/mqtt.github.io/wiki)

    【讨论】:

    • Dale Lane 的旧链接已损坏。这是新的dalelane.co.uk/blog/?p=1599
    • 如果有人在寻找示例应用的 Android Studio 端口,我在这里做了一个:github.com/bytehala/android-mqtt-quickstart
    • @lemuel 我来到这里是因为我正在寻找如何为 MQTT 编写 Android 应用程序。尽管 Dale Lane 的博客对此进行了解释,但他的示例使用了较旧的 IBM MQTT 库,并且该应用程序中的许多代码已被弃用。真正帮助我的是您的示例应用程序。真是太好了!谢谢。
    • @eepty 哇!谢谢你让我知道。从最近访问我的存储库的人数来看,IoT/MQTT 似乎正在加速发展。
    【解决方案2】:

    基本步骤

    1. 用 PHP 安装 WAMP 服务器(版本应高于 5.1.0)
    2. 安装 WAMP 服务器后,启动 WAMP 服务器(使其 可以获取默认配置)。
    3. 打开命令提示符并将目录更改为 PHP{version},

    例如 Cd C:\wamp\bin\php\php5.3.0

    [1] 安装 PEAR

    • 现在我们必须安装 PHP PEAR(即默认不安装) 通过运行以下命令。

      php -d phar.require_hash=0 ./PEAR/go-pear.phar

      php -d phar.require_hash=0 go-pear.phar

    • 现在检查C:\wamp\bin\php\php5.3.0\PEAR下的目录PEAR (安装与否)。

    • 现在在目录C:\wamp\bin\php\php5.3.0 中有PEAR_ENV.reg(注册表文件)已创建,因此双击它以将PHP.ini 文件更改为PEAR 环境

    • 现在 pear 已安装,我们必须运行以下命令(可选)。

      梨升级

      pear 安装升级渠道

      PEAR 设置现已完成

    [2] 安装 SAM(简单异步消息)

    • 要安装 SAM,我们必须运行以下命令

      转到 C:\wamp\bin\php\php5.3.0

      Pecl 安装 –B SAM

    [3] 选择并运行 Mosquitto 或 RSBM

    • Really Small Message Broker (RSMB) 也是一个简单的 MQTT 代理 由 IBM http://www.alphaworks.ibm.com/tech/rsmb 提供。它运行在 默认为 1883 端口。在我们的架构中,它接受来自 服务器并将它们传递给正确的设备。 RSMB 也可以 替换为 Mosquitto 服务器 http://mosquitto.atchoo.org/
    • 让我们使用 RSMB。
    • 下载并转到 rsmb(您的版本)中的 Windows 文件夹
    • 启动 Broker.exe

    现在您的服务器已配置完毕。您可以将其用于推送通知。

    【讨论】:

      【解决方案3】:

      如果您想使用 MQTT 在 Android 设备中发送推送通知,那么此演示将最适合您。

      通过使用此示例,您可以将推送通知发送到您的 android 设备。

          https://github.com/tokudu/AndroidPushNotificationsDemo
      

      如果您想创建自己的推送服务,如 LEADBOLT、AIRPUSH 等。那么您必须满足以下条件。

      [1] 配置您自己的服务器以发送推送通知。(就像在 PHP、WAMP 中工作的 tokudu) 对于配置服务器.. [A] 安装梨 [B] 安装 SAM [C] 配置SAM

      [2] 您需要 mosquitto 或 IMB 的 RSMB 来选择目标 Android 设备。 [3] 你需要一些 android 代码来接收通知,向服务器发送保持活动信号,与服务器建立连接等......(可以在 TOKUDU 示例中找到)。

      如果您有任何问题,请告诉我,我一定会帮助您。

      【讨论】:

      • 谢谢。您能帮我在 apache 服务器中设置和配置消息代理、SAM 吗?
      • 警告:这个项目使用了以前版本的 MQTT,它可以正常工作,但它不提供身份验证功能(用户名/密码)。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-27
      • 1970-01-01
      • 1970-01-01
      • 2011-05-29
      • 2015-12-27
      • 1970-01-01
      相关资源
      最近更新 更多