物联网项目:使用 Android 应用通过 Google Firebase 控制 LED

2025年3月17日 | 阅读 3 分钟

在本节中,我们将使用 Firebase 数据库和 Android 应用程序控制与 NodeMCU 相连的 LED 。在本项目的前一节 使用 Google Firebase 控制与 NodeMCU ESP8266 连接的 LED 中,我们通过手动编辑 Firebase 数据的 LED 状态来控制 LED。 每次更改 LED 状态都是不可能的,耗时且不符合逻辑。

为了解决上述问题,我们构建了一个 Android 应用程序,该应用程序与 Firebase 数据库交互并更新 LED 状态,从而打开/关闭 LED。

项目的运作原理(Android 应用程序、Google Firebase 和 Node MCU)

在这个项目中,使用了三个主要组件:Android 应用程序、Firebase 数据库和 Wi-Fi Node MCU。

IoT Project: Google Firebase controlling LED using Android App

Android 应用程序将串行数据 1 或 0 发送到 Firebase 数据库。 Firebase 数据库与 Wi-Fi NodeMCU 交互,并且该 NodeMCU 根据从 Firebase 数据库接收到的数据进行操作。 如果 NodeMCU 接收到串行数据 1,它会打开 LED,如果 NodeMCU 接收到串行输入 0,则会关闭 LED。

现在,编写一个 Android 代码以与 Google Firebase 数据库交互并更新 LED 状态

打开 Android Studio 并创建一个空项目。

首先,我们需要将我们的 Android 应用程序连接到 Firebase 项目。 为此,单击“工具” >“Firebase”>

IoT Project: Google Firebase controlling LED using Android App

单击“实时数据库 > 保存和检索数据。

IoT Project: Google Firebase controlling LED using Android App

单击选项“1 将您的应用程序连接到 Firebase”并选择您在 Firebase 上创建的项目。

IoT Project: Google Firebase controlling LED using Android App
IoT Project: Google Firebase controlling LED using Android App

选择项目后,单击“连接到 Firebase”,并将“实时数据库添加到您的应用程序

activity_main.xml

在布局文件中,我们使用两个按钮发送串行数据以更改 LED 状态 1(开)和 0(关)

MainActivity.java

在 MainActivity.java 文件中,我们创建了两个按钮,一个用于“开”,另一个用于“关”。 单击“开”按钮,它会将 Firebase 数据库 LED_STATUS 更新为“1”,单击“关”按钮,它会将 Firebase 数据库 LED_STATUS 更新为“0”。

在按钮点击侦听器中添加第四个选项代码“写入您的数据库”。

在 AndroidManifest.xml 文件中添加 Internet 权限

将 Firebase 数据库的读取、写入状态从 false 更新为 true。

注意:将规则属性设置为 true 会将其设置为公共访问,任何人都可以访问。 因此,出于安全原因,不要设置为 true 或了解更多关于安全规则的信息。

IoT Project: Google Firebase controlling LED using Android App

运行您的项目并控制与 NodeMCU ESP8266 连接的 LED。

输出

IoT Project: Google Firebase controlling LED using Android App
IoT Project: Google Firebase controlling LED using Android App IoT Project: Google Firebase controlling LED using Android App
下一主题#