当前位置:首页 > 物联网 > IoT设计分享
[导读]在本教程中,我们将构建超出电子领域的东西。作为一名电子工程师,我们大多数人都想为我们的物联网应用程序构建一些用户界面,在大多数情况下,Android应用程序将是用户与我们的物联网设备交互的正确选择。所以,如果你想为你的物联网应用程序构建一些Android应用程序,那么下面的教程是适合你开始的。但是,在我们开始我们的旅程之前,让我们讨论一下Android应用程序的一些基础知识。

在本教程中,我们将构建超出电子领域的东西。作为一名电子工程师,我们大多数人都想为我们的物联网应用程序构建一些用户界面,在大多数情况下,Android应用程序将是用户与我们的物联网设备交互的正确选择。所以,如果你想为你的物联网应用程序构建一些Android应用程序,那么下面的教程是适合你开始的。但是,在我们开始我们的旅程之前,让我们讨论一下Android应用程序的一些基础知识。

在互联网上有很多选择来构建Android应用程序。这些资源为我们提供了各种工具,如拖放功能,代码块等。但是,如果你想为你的物联网应用程序提供一些可定制的功能,那么最好和传统的方法是使用本地平台。我们有三种编程方法来用硬编码从头开始构建Android应用程序。是的,我说的是Java、Kotlin和Dart。在本教程中,我们将通过在android studio软件中使用Java构建一些有吸引力的android应用程序。但是,我们的主要重点将是为我们的物联网应用程序制作一个Android应用程序。

你要学什么?

我们将遵循简单的Android架构,我们需要创建一些活动和布局,我们需要为特定的活动设计布局。困惑吧?你可以访问这个链接了解更多关于Android工作流程、模型和架构的细节。在本教程中,我们的主要重点是为Wi-Fi和蓝牙应用程序创建一个Android应用程序。因此,我将本教程分为两个部分。在第一部分中,我将向您展示如何在Android Studio中制作您的第一个Android应用程序,我们将添加一个按钮和两个灯泡图像(用于打开和关闭状态)。然后我们将改变按钮和图像的状态为ON或OFF每当我们点击按钮。因此,在本教程结束时,您将学习如何构建一个简单的Android应用程序,其中包含一个按钮来控制灯泡,如下所示。

安装Android Studio并创建我们的第一个项目

点击链接下载最新版本的Android Studio。Android studio的安装窗口非常简单。只要遵循Android studio安装窗口中给出的说明即可。安装完成后,单击create a new project按钮。

屏幕上会弹出一个新窗口。然后从活动列表中选择一个空活动,并单击下一步。

现在,您需要提到项目名称并选择语言为Java。在“最小SDK”中选择Android的SDK版本。简而言之,您需要选择支持您的应用程序的最小Android版本。在我的例子中,我选择了“API23: Android 6.0 (Marshmallow)”。现在单击Finish来启动项目。

建造这个新项目需要一些时间。确保你有良好的网络连接,因为它会下载一些依赖项。当项目构建完成后,您将在android studio IDE的左上角发现以下目录结构。

Android Studio中的文件夹结构:

上图显示了项目目录的结构。在本教程中,我们将在项目目录中的两个主要文件中编写一些代码。一个是“MainActivity.java”(你可以在“app > java > com.example”中找到这个文件)。另一个是“activity_main.xml”(你可以在“app > res > layout”文件夹中找到这个文件)。让我们打开“activity_main.xml”文件。

理解activity_main.xml文件:

在xml文件的右上角有三个可用的选项(在下面的图像中我用橙色圈出了这个选项)。这三个选项分别是代码、分割和设计。

代码部分:

代码部分将允许您使用编码制作整个布局。在下面的图像中,您可以看到activity_main.xml文件的代码部分。编辑窗口内的以下代码已自动生成。默认布局组件是约束布局。您可以将布局更改为其他布局,如相对布局,线性布局等。

将部分:

分割部分将允许您在对代码进行一些更改时查看布局。如下图所示,我们有一个代码窗口和一个布局窗口。我们可以在布局窗口中实时查看我们的更改。

设计部分:

Design部分将为您提供拖放功能,以便在布局中添加任何项。在下图中,你可以看到我们只有设计窗口,它允许我们拖放组件,我们可以通过使用布局窗口旁边给出的属性窗口来改变组件的属性。

在activity_main.xml中添加一个按钮:

我们需要在布局文件(即activity_main.xml)中添加一个按钮。因此,转到activity_main.xml布局文件的代码部分,并添加下面给出的代码。

按钮布局的代码片段:

解释:

在上面的代码片段中,我使用了Button类,并给了它一个唯一的Id,即“Button1”。我使用“android:text”在按钮上添加文本,该按钮最初设置为“TURN on”,每当用户按下按钮时,我们将从MainActivity.java文件更改此文本。

在activity_main.xml中添加ImageView:

ImageView类用于在应用程序中显示任何类型的图像资源。我们需要在布局文件(即activity_main.xml)中添加ImageView来显示灯泡的开/关状态图像。因此,首先我们需要两张灯泡的图像(打开和关闭状态)。我已经将其下载到项目的“app > res > mipmap”目录中。

LED图像的代码片段:

解释:

在上面的代码片段中,我使用了ImageView类,并给了它一个唯一的Id,即“led”。我使用“android:src”来添加处于关闭状态的led的图像。当我使用约束布局时,我已经为图像项设置了一些约束。我不打算在这里详细介绍布局。你可以在我上面分享的链接中找到细节。

所以,我们已经完成了我们项目的布局。让我们看看下面的布局。下图的灯泡处于关闭状态。现在,我们需要将这个图像与处于打开状态的灯泡的图像进行切换。在下一节中,我们将编写MainActivity.java文件。

MainActivity.Java:

在MainActivity.java文件中,我们需要添加一个Button和一个ImageView类,并且我们需要将Button和ImageView的布局分别分配给它们各自的类。您可以在代码中找到一个布尔变量“isSwitchOn”。该变量用于维护按钮和图像的打开或关闭状态。为了监听来自用户的点击,我使用了Button类的setOnClickListener()方法的onClick()函数。然后在onClick()下,您可以找到一个if-else语句,用于维护按钮和图像的状态。有一些函数为wifiButton像setText(), setTextColor(), setBackgroundColor()。这些用于更改wifiButton的布局属性。如果你想进一步了解这些功能,你可以访问开发者的android开发指南。

主活动java文件的代码片段:

运行我们的第一个Android应用程序:

现在,在继续Wi-Fi活动部分之前,让我们运行我们的应用程序。在测试期间,我们有多种选择来运行我们的应用程序。

虽然我们在android Studio中有一个内置的android虚拟设备(AVD)管理器,但最好的选择是在调试模式下将android手机连接到PC上。要打开调试模式,您需要从android手机的设置中启用开发人员选项。启用开发人员模式的过程可能因设备而异。当你在调试模式下将手机连接到PC时,Android Studio会自动识别设备,然后询问你的许可。允许这样做,你的Android手机现在以调试模式连接到Android工作室。然后您需要允许通过USB安装apk的权限。现在,单击工具栏上的运行按钮。有了这些,我们就成功地构建了自己的Android应用。

我们的第一个Android物联网应用程序的演示

本文编译自iotdesignpro

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭