App Inventor 2—零代码开发自己的物联网App

这篇具有很好参考价值的文章主要介绍了App Inventor 2—零代码开发自己的物联网App。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

如果使用类似Blynk的手机端App不能满足开发需求,而在手机上使用Easy Iot、SIoT等物联网平台又不够直观简便,能不能自己编写一个手机端app,自己设计界面,自己编写程序,把各种奇思妙想灵活呈现在应用端呢?
通常情况下,开发iOS需要学习Objective-C或Swift编程语言,而Android则主要是Java或C/C++语言,需要投入大量的时间精力来学习,学习门槛和成本足以让普通创客望而却步。所以本文打算介绍一种类似Mind+的可视化编程工具App Inventor 2,它使人们无需编写代码即可创建Android应用程序。使用App Inventor 2,开发人员可以通过搭积木式的拖放组件和设置属性的方式来创建应用程序,让不具备编程经验的人也可以简单轻松的创建自己的应用程序,大大降低了技术门槛,提高了开发效率。
本文的知识点为初步了解App Inventor 2开发Android应用程序的步骤和方法,了解App Inventor 2、Easy Iot物联网平台和掌控板在互联网建立连接和交互的方法。通过实验,一步一步体验从设备端到应用端自主开发的乐趣。

1. 实验目标

(1) 初识可视化安卓应用编程平台App Inventor 2
(2) Easy Iot平台在App Inventor 2和掌控板之间的作用
(3) 掌控板如何连接到Easy Iot平台
(4) App Inventor 2如何连接到Easy Iot平台
(5) App Inventor 2制作的App如何与掌控板交互

2. 实验所需资源

硬件:
(1) 电脑
(2) 手机
(3) 掌控板
(4) 数据线
本文实验所用的台式电脑为Windows7操作系统,手机为安卓系统,掌控板为V2.0版本,数据线为Type-C接口。
软件:
(1) 电脑安装Mind+软件
本文实验所用的Mind+软件版本为V1.8.0 RC1.0
(2) Easy Iot平台
平台网址:https://iot.dfrobot.com.cn/index.html
学习参考:《Easy Iot—简单易用的物联网平台》
https://mp.weixin.qq.com/s/Mh4_VcllO2NNKZjrVdyKIg
(3) App Inventor 2可视化编程平台
推荐使用谷歌、QQ、Firefox、Safari等非IE浏览器登录App Inventor 2平台,平台网址及使用方法下面会详细介绍。

3. 先准备好Easy Iot平台和掌控板程序

在《Easy Iot—简单易用的物联网平台》一文中,我们介绍了Easy Iot平台的概念和用法,知道了应用端和设备端通过MQTT协议在Easy Iot平台订阅和发布主题的方式进行指令下达和数据上传。也了解了通过电脑浏览器或者微信小程序管理Easy Iot平台不够直观和便捷的弊端。针对这个痛点,我们来自己动手通过AI2平台编辑一个开关掌控板LED灯,获取掌控板环境光强度数据的App,实现应用端的自定义开发。为便于学习了解,本文沿用了《Easy Iot—简单易用的物联网平台》实验中的Easy Iot平台配置和Mind+掌控板程序,下面我们来一起回顾和准备一下:
(1) 在Easy Iot平台添加2个设备(主题),分别命名为“指令”和“光线”
物联网app开发,物联网
(2) 在Mind+编辑以下程序并上传搭到掌控板
连接WIFI及Easy Iot平台的程序;
接收到Topic0的“on”、“off”指令开关LED灯的程序;
每5秒自动上传环境光强度到Topic1的程序。
物联网app开发,物联网

4. 初识可视化安卓应用编程平台App Inventor 2

App Inventor 2(以下简称AI2)是一个由麻省理工学院设计并维护的基于 Web 的集成开发环境,用于创建 Android 应用程序。AI2 在初学者和教育领域中广受欢迎,因为它的用户界面简单易用,它通过类似Mind+软件的积木拖放的可视化编程方式创建应用程序,不需要传统的编写代码来实现应用程序的逻辑和功能。虽然 AI2 是为初学者设计的,但它也是一个强大的工具,可以创建具有复杂功能和交互的应用程序。通过 AI2,你可以构建自己的游戏、工具、教育应用等等。下面一起动手了解这个创客编程利器的使用方法:

(1) 选择适合自己的AI2平台

AI2平台基于浏览器工作,国外的官网是全英文界面,不便于学习和使用。国内爱好者搭建的汉化和定制化的AI2平台很多,如果只是简单学习和了解,可以使用AI2社区版(网址为http://ai2.17coding.net/?locale=zh_CN),优点是简单和免费,缺点是组件不够多,项目保存不方便。本文实验采用的是AI2的汉化增强版软件WxBit(网址为:https://www.wxbit.com/),注册虽然麻烦一些,但是组件较多,功能强大。本文下面所提到的AI2平台皆指WxBit。

(2) 注册并登录AI2平台

使用谷歌、QQ、Firefox、Safari等非IE浏览器访问WxBit网站,按提示进行注册和登录,推荐使用QQ账号登录。
物联网app开发,物联网
物联网app开发,物联网

(3) 简单了解AI2平台界面和基本操作

新建一个AI2项目后,编程界面有“组件设计”和“逻辑设计”两个窗口,在编程界面的右上角进行切换,下面依次介绍:
“组件设计”窗口用于设计程序的界面,AI2 提供了广泛的组件和功能,包括按钮、文本框、图片、声音、视频、传感器等等,用于构建应用程序的用户界面和实现交互功能。使用方法很简单,就拖放组件和设置属性两个步骤。首先在“组件面板”选中所需的组件后,使用鼠标拖拽到中间的手机界面区域,就能在项目中使用该组件了,点击组件右边的问号,可以查看组件的介绍。然后在“组件属性”区域,可以对选中的组件属性进行设置,每个组件都有一些相应的属性,用于定义其外观和行为。

物联网app开发,物联网
切换到“逻辑设计”窗口,在“模块”栏中列出了平台的内置块和“组件设计”窗口中添加的组件块,选中某个块,相关的积木就会自动列出,通过按照一定的顺序拖放和连接积木块,就可以创建应用程序的逻辑和功能。是不是很熟悉?就是和Mind+一样的操作。
物联网app开发,物联网
编程完成后,就可以预览或者生成安装包(apk文件)在Android手机运行了。预览主要用于调试和确认编程效果,需要从“帮助”菜单下载安装一个“调试助手”,再从“预览”菜单扫码进行预览。调试完成后,可以从“打包”菜单生成下载二维码供手机扫码安装,或直接下载安装包到电脑,再从电脑导入手机进行安装。
物联网app开发,物联网
WxBit平台和其他AI2平台的菜单名称可能会有差异,但主要功能和逻辑是一样的,都有预览和生成安装文件的功能。另外,WxBit平台还有个比较有特色的“展厅”功能,用于参考学习其他人创建的程序,进一步提高开发效率。
物联网app开发,物联网

5. 在AI2平台编程连接Easy Iot平台

下面我们从新建项目到生成安装包全流程开发一个连接Easy Iot平台控制掌控板LED灯,获取掌控板环境光强度数据的Android应用程序:

(1) 登录AI2P平台(WxBit)并新建一个名为“EasyIot”的项目

物联网app开发,物联网

(2) 在“组件设计”界面添加组件

从左侧“组件面板”栏下面的“界面布局”中拖放添加3个“水平布局”组件到手机预览界面。界面布局组件主要用于容纳并调整其他可视组件在屏幕上的位置。
物联网app开发,物联网

从“用户界面”栏分别拖放添加“按钮”、“开关”、“标签”等3个组件到水平布局1、2、3里面
物联网app开发,物联网

从“通信连接”栏拖放添加“MQTT客户端”组件。本实验与EasyIot平台通过MQTT协议连接,所以这里会用到MQTT组件,该组件不需要体现在界面上,属于非可视组件,添加后会在屏幕下方出现。并非所有的AI2平台都有现成的MQTT组件,这也是本次实验采用WxBit的原因。
物联网app开发,物联网

至此,本实验用到的组件已经添加完毕,可以在组件列表中查看当前已添加的组件:
物联网app开发,物联网

(3) 在“组件设计”界面的右侧,选中“组件列表”中的组件进行属性设置

选中“Screen1”,把标题设为“掌控板控制端”:
物联网app开发,物联网
选中“按钮”,把“文本”设为“连接服务器”,“字号”设为“22”:
物联网app开发,物联网
选中“开关”,把“文本”设为“LED灯”,“字号”设为“22”:
物联网app开发,物联网
选中“标签”,把“文本”设为“环境光强度”,“字号”设为“22”:
物联网app开发,物联网
选中“MQTT客户端”,设置“服务器URL”为“iot.dfrobot.com.cn:1883”,另外的“用户名称”和“密码”对应你的Easy Iot平台进行设置:
物联网app开发,物联网

(4) 切换到“逻辑设计”界面对组件功能和事件进行编程

在左侧的“模块”栏中,选中相应的模块就会弹出该模块相关的编程积木,从积木的颜色可以区分不同的用途,把积木按逻辑组合在一起,就形成了一系列功能和事件程序,下面我们按事件进行编程:
按钮单击事件:
该事件用于点击按钮后连接EasyIot服务器。由于MQTT服务器连接参数已经在组件属性中设置完毕,所以此处只需要调用连接操作即可。点击“按钮-连接服务器”模块,拖放“当…被点击”积木到工作面板,再点击“MQTT客户端”模块,拖放“调用…连接”积木到前一个积木内即可。
物联网app开发,物联网
物联网app开发,物联网

连接成功事件:
在单击连接服务器按钮后,如果服务器连接成功,可以通过该事件在App界面上做出反应,提示服务器已连接。首先从“MQTT客户端”模块拖放“当…已连接”积木,在该积木中添加改变按钮文本和颜色的积木。
后面的积木将不再详细介绍模块来源,除内置模块外,大家可以从积木的名称上找到它来源于哪个模块。
物联网app开发,物联网

订阅环境光强度主题:
前面我们已经设置了掌控板每隔5秒上传环境光强度到EasyIot平台的“光线”(topic1)主题,此处要接收环境光强度数据首先要订阅该主题。此处我们可以把订阅的操作添加在服务器连接成功这个事件中:
物联网app开发,物联网
接收环境光强度数据:
订阅主题后,每当收到EasyIot平台发来的数据,我们就通过“环境光强度”标签来显示数据。从“MQTT客户端”模块拖放“当…收到消息”积木到工作面板。该积木有“主题”和“消息”两个参数,把“消息”参数设置为“环境光强度”标签的文本,此处用了“合并文本”积木,让数据显示更直观。参考程序如下:
物联网app开发,物联网
开关LED灯事件:
通过点击“开关LED灯”组件,实现远程开关掌控板LED灯的程序。开关LED灯组件有打开和关闭两种状态,通过程序判断状态并分别向EasyIot平台“指令”(Topic0)主题发送“on”或者“off”指令,即可实现该功能。参考程序如下:物联网app开发,物联网 至此,涉及到该实验的AI2编程已经完成,相信熟悉Mind+的朋友也能很快上手AI2,下面我们进行程序调试。

(5) 手机预览运行AI2程序

AI2支持手机预览并运行程序。在WxBit平台,预览功能需要在Android手机安装一个叫做“WxBit调试助手”的App。在“帮助”菜单下点击“下载调试助手”,用手机扫描二维码进行安装即可:
物联网app开发,物联网
安装完成后,点击“预览”菜单下的“连接调试助手”,电脑屏幕会弹出一个二维码。运行手机上的“WxBit调试助手”,选择“扫描二维码连接”进行扫码,即可预览刚才编辑的程序。
物联网app开发,物联网
现在进行实际测试,把你的掌控板通上电,检查确认掌控板上有没有提示“wifi连接成功”和“Easy Iot平台连接成功”?点击手机上的连接服务器,会不会提示连接成功?通过手机上的“LED灯开关”能不能控制掌控板LED灯?“环境光强度”标签有没有定时更新数据?
物联网app开发,物联网
物联网app开发,物联网
如果所有的这些都实现了,证明你的编程十分顺利且成功,如果调试不正常也不用灰心,毕竟涉及多个软件及平台,遇到问题很正常,建议你从重启掌控板开始,逐步排查问题。下面是一些常见的问题:
掌控板连接的WiFi是不是2.4G?
掌控板的设置和你的EasyIot平台参数是否一致?
AI2平台MQTT设置和你的EasyIot平台参数是否一致?

(6) 把程序安装到手机

当一切调试正常后,我们就可以生成一个Android应用程序的安装包,把程序安装到你的手机独立运行。
和其他所有的App一样,你可以为自己的App设置一个图标。在“组件设计”界面右上角选择“项目属性”,在“图标”中点击添加图片即可设置为图标。
物联网app开发,物联网
在“打包”菜单下有两个选项,一个是“显示二维码”,点击会弹出一个二维码下载界面,用手机浏览器扫描该二维码即可下载安装该软件;另一个是“下载到本机”,点击会下载安装包到电脑,需要传输到手机上进行安装。
物联网app开发,物联网
本次实验通过“QQ浏览器”扫描二维码方式安装,效果如下:
物联网app开发,物联网
由于App不是由手机的应用市场下载的,所以会有风险甚至是病毒提示,选择授权安装即可。安装成功后,手机桌面会生成App的图标,点击运行试试看。到此,你已经初步掌握了物联网平台、设备端和应用端的联网定制化开发,赶快动手试试,把你的物联网创意变成现实。

6. 本实验完整程序和下载地址

掌控板Mind+程序
物联网app开发,物联网
手机端AI2程序
物联网app开发,物联网

下载地址:https://gitee.com/inventara/arduino文章来源地址https://www.toymoban.com/news/detail-754007.html

到了这里,关于App Inventor 2—零代码开发自己的物联网App的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 6. MIT App inventor 自制手机APP连接阿里云平台 手机APP显示STM32发来的数据

    提示:这里是从实际应用如何使用教学配置,未从原理讲解,适合小白从零开始到成功,比较有成就感 STM32+ESP8266(AT固件)连接阿里云物联网系列保姆级教学 1. 创建产品和设备 2. 设置产品Topic数据和功能定义设备物模型数据显示 3. 硬件连接+代码修改 4. Web数据可视化 5.功能

    2024年01月19日
    浏览(58)
  • 7.MIT App inventor 自制手机APP连接阿里云平台 手机APP远程控制STM32设备

    提示:这里是从实际应用如何使用教学配置,未从原理讲解,适合小白从零开始到成功,比较有成就感 STM32+ESP8266(AT固件)连接阿里云物联网系列保姆级教学 1. 创建产品和设备 2. 设置产品Topic数据和功能定义设备物模型数据显示 3. 硬件连接+代码修改 4. Web数据可视化 5.功能

    2024年02月22日
    浏览(61)
  • Java基于区块链的物联网数据交易+46193(免费领源码)可做计算机毕业设计JAVA、PHP、爬虫、APP、小程序、C#、C++、python、数据可视化、大数据、全套文案

    SSM基于区块链的物联网数据交易 系    院 XXXX 学科门类 XXX 专    业  XXX 班级 XXX 学    号 XXX 姓    名 XXX 指导教师 XXX 教师职称 XXX 2022 年 12 月 4 日         物联网技术作为继互联网技术后新一代的通信信息集成应用的典范,其巨大的应用前景受到了学术界和政商界

    2024年02月04日
    浏览(48)
  • 利用stm32+app inventor与esp8266通信

    本章实验的目的是将手机连接上ESP8266提供的WIFI网络,打开自定义的app连接ESP8266的ip地址及端口号,实现app与ESP8266模块的通信,进而达到app控制32开发板的目的,并将开发板上面的数据返回到app上显示出来。   关于stm32与esp8266之间的通信,在前面的文章中已经介绍得差不多

    2023年04月11日
    浏览(43)
  • 【毕设调试二】WiFi模块的AP模式与App Inventor

    提示:在上一篇中我们简单的完成了WIFI模块的STA模式,在此篇中我们将梳理WiFi的AP模式 AP模式 :热点模式,是通过设置WiFi模块来产生一个热点,然后通过连接本热点,来达到在手机   上发送控制信息到单片机,可以使用于app控制单片机类的项目 提示:需要用到上一章所配

    2024年02月11日
    浏览(38)
  • App Inventor 2 语音交互机器人Robot,使用讯飞语音识别引擎

    App Inventor 2 语音识别及交互App。识别语言指令并控制机器人运动,主要用到语音识别器及文本朗读器组件,语音识别相关开发最佳入门。代码逻辑简单,App交互性及趣味性非常强~ 视频预览 教程入口:App Inventor 2 中文网(www.fun123.cn) - 登陆 - “项目指南” - 语音机器人Ro

    2024年02月14日
    浏览(46)
  • 手机电脑scoket通信 手机软件 APP inventor 服务端程序python

    再帮助同学坐课题的时候接触到了scoket通信,了解到这应该是基层网络通信的原理,于是就导出搜索了一下相关的资料,简单来说scoket通信就是,可以让不同设备在同一个网络环境的条件下,可以实现相互通信既可以一对一也可以一对多,总之这对开发者来说,是跨设备交互

    2024年02月10日
    浏览(38)
  • 【详细教程】App inventor连接阿里云控制设备开关灯等操作实现方法

    上一篇文章实现了App inventor接收STM32设备端上传阿里云的温湿度数据等。 这篇文章将实现App inventor控制STM32设备端(灯,继电器等)。 App inventor MQTT连接阿里云例程文件 方法和上一篇文章相似,没看过前一篇文章的可以回去看看: 【详细教程】App inventor连接阿里云平台(AP

    2024年02月02日
    浏览(161)
  • 元宇宙游戏开发APP软件把现实搬到互联网中

    元宇宙游戏开发随着元宇宙的声誉日益提升,越来越多的群体和行业开始关注元宇宙的趋势。许多大型企业已经抢先一步自行制作了专属的元宇宙虚拟展厅,开发元宇宙游戏,将线上和线下相结合,开启了新的推广和营销大门。董技叔源码哥发现自从广受认可的元宇宙元年

    2024年02月06日
    浏览(47)
  • 谷歌云微软VSCode和谷歌Android Studio云端远程开发环境云开发自己的APP

    原文谷歌云双飞微软VSCode和谷歌Android Studio云端远程开发环境云开发自己的爱啪啪APP - 夏森林 不满足单飞vscode《用谷歌云自建微软GitHub codespaces和VScode.dev云编译Cloud IDE是怎样一种体验?》 那么我们来vscode和Android studio《云双飞微软VSCode和谷歌Android Studio云端远程开发环境云开

    2024年02月07日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包