ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

物联网控制APP入门专题(一)---做物联网APP的几个模式简介

2021-06-19 15:01:51  阅读:197  来源: 互联网

标签:APP 模式 联网 --- MQTT 源代码 设备


摘要:物联网设备和单纯的嵌入式设备最大的区别是联网与否------如果能够联网,就需要对设备端和云端进行相应的编程或者设置,让它们之间进行通信;如果不需要联网,那么烧录软件,让设备自动工作即可,不需要考虑网络通信问题。此外,有些场合需要提供移动端APP,而且一旦有了APP加持,能够让你的项目显得瞬间高大上。对于找工作的同学而言,能够制作APP可以让你找工作更加容易,对于小公司而言,能够不依赖第三方提供物联网APP,也能极大地节约研发成本。本文就简介当前几种物联网控制APP的几个模式,让大家了解几种不同的技术路线。后续的文章,将重点对IOT STUDIO移动可视化模式和android studio模式进行详细讲解,一步步带您做出自己的物联网APP。

目录

一、在线生成APP源代码的模式

二、第三方公版APP子设备模式

三、APP壳嵌套网页模式

四、android studio原生app模式


一、在线生成APP源代码的模式

这种模式以“机智云”为代表,当你的项目设置完成后,可以在线生成代码包,然后下载之后进行编译。

参考文章:使用ESP8266模块DIY一个热水器控制器,使用机智云后台 (二)ESP8266软件篇

在开发者中心可以对项目的移动端程序进行设置

优点:可以通过简单的步骤生成源代码,后续还可以修改。

缺点:开机画面以及步骤是机智云风格的,还需要登录用户,不能打开APP就是控制自己设备的界面。

 

二、第三方公版APP子设备模式

以“云智能”和“小米之家”为代表。“云智能”是与阿里云生活物联网配套的,“小米之家”是与小米的设备配套的。这类APP 的特点是大厂提供“公版”的APP,自己的设备可以通过申请加入到大厂的平台中,作为一个子设备(APP界面中的一个特定的小图标)运行,点击了这个小图标之后,就进入了一个专属的页面。

进入到“人机交互”界面之后,就可以配置APP的界面。

参考文章:https://help.aliyun.com/document_detail/127307.html?spm=a2c4g.11174283.6.613.2d197132toaKwJ

 

优点:只需要在阿里云生活物联网平台或小米IOT开发者平台新建项目,一步步操作到APP这一步,设置一下就行。

缺点:工业项目和农业项目,如果用一个看似生活设备风格的APP,感觉不专业。

 

三、APP壳嵌套网页模式

这种模式的开发,核心是自己像开发网站一样,做出来一个能够控制自己物联网设备的“网页”或者网站,然后做一个APP的“壳”,打开APP之后,界面实际上是打开了自己“网站”的“”“页面”。

再简单点来说,就像是做了一个浏览器APP,只不过这个浏览器是没有地址输入框的,打开就是自己的网站。

例如下图这样的APP。

制作的方法有两种:第一种是自己写框架,第二种是通过第三方生成框架。框架的核心是浏览器。

自己写框架,可以用android studio写,调用内置的webview组件,浏览指定的网址。

第三方框架,很多是支持无代码编程的,比如H5APK等等,搜索关键词“安卓网页封装APP”,就可以将你的网页打包成APP了。

优点:如果是做了APP框架,那么理论上它就是一个浏览器,不用升级的。你的网站或者网页更新了之后,再次打开它,就是最新的页面。不用像安卓原生应用一样老是升级。

缺点:要有域名、服务器(或者物联网云平台)、还要经过工信部和公安备案的过程,比较繁琐。第三方封装还需要收费。

四、android studio原生app模式

不管是那种APP,其设计目的都是让物联网设备可以在移动端进行控制,让用户用手机或者平板灯移动设备可以方便地进行操作。

对于商业项目来说,一般要求APP定制化,客户需要什么就定制成什么样子。在这种情况下,最好还是要学会自己编写APP才能实现客户需求。

其实APP的核心是实现与云后台的通信和设备控制。它难在通信能否实现。

通信的核心在哪里?在MQTT客户端。

它其实并不难。

为什么不难?我们搞清楚它是怎么工作的,然后在APP源代码里面实现它就行了。

参考文章:使用arduino D1 wifi模块(WeMos D1)连接阿里云物联网平台并成功实现APP点亮板载LED(五)---MQTT.fx模拟设备连接阿里云

MQTT已经成为事实上的物联网标准,它是通过一种“发布”“订阅”的方式工作的,具体通信原理不在此赘述。

MQTT.FX软件模拟连接阿里云物联网平台的过程,就是我们APP要实现的过程。

无非是MQTT.FX软件已经内置了基本的通信功能,我们只需要计算出来客户端的密码就行了。而APP源代码里面要有MQTT客户端的支持库,同时也要有加密库,让APP运行的时候,能够自动将软件提供的“三元素”计算成密码,供客户端进行调用。

明白了APP的核心是实现“客户端”和“加密”,其实工作已经完成一半了,剩下来一半的工作是调试。我会在以后的文章中详细介绍。

下图是我编写(修改)的一个能够与阿里云通信的安卓APP界面。

下图是云端通信日志

 

小结:编写APP并不难。本文简介了四种常见的APP开发模式,并对android studio原生APP开发模式开了个头。通过本篇分析,希望大家能够对物联网APP开发有所了解,根据所开展的项目,合理选择开发模式,在预算和时间可控范围内,尽可能快地开发出适合的APP。

 

 

 

标签:APP,模式,联网,---,MQTT,源代码,设备
来源: https://blog.csdn.net/oXiaoXue123456789/article/details/118053873

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有