物联网设备和简单的嵌入式设备最大的区别在于是否联网。如果可以联网,就需要编程或者设置设备端和云端互相通信。如果不需要联网,直接烧软件,让设备自动工作,不用考虑网络通信问题。
另外,有些场合需要提供手机app,一旦有了app加持,可以让你的项目瞬间显得高大上。对于找工作的学生来说,会做app可以让你更容易找到工作。对于小公司来说,能够不依赖第三方提供物联网app也可以大大节省研发成本。

本文简单介绍了目前物联网控制APP的几种模式,让大家了解几种不同的技术路线。
在线应用源代码生成模式
生成线上APP源代码的模式以“智能云”为代表。当您的项目设置好后,您可以在线生成代码包,然后下载并编译它们。
项目的移动程序可以在智能云开发者中心设置。
作为参考,你可以用ESP8266模块DIY一个热水器控制器:ESP8266软件。
摘要
优点:可以通过简单的步骤生成源代码,以后还可以修改。缺点:开机画面和步骤都是智之云的统一风格。您还需要登录到用户。如果打不开APP,可以控制自己设备的界面。
在线应用开发模式
更便捷的开发线上APP的方法是使用智之云的新版本开发平台,在线定制APP的功能页面和显示信息,自己更换logo,根据模板修改图标位置和大小等。,来开发自己的APP。
进入“人机交互”界面后,就可以配置APP的界面了。
摘要
优点:基本不需要任何APP开发基础和代码修改,就可以形成一个个性化的APP。
第三方公共APP子设备模式
同样以“智能云”为代表,这类APP的特点是大厂提供“公版APP”,自己的设备可以通过应用加入大厂的平台,作为子设备运行。点击这个小图标后,就会进入专门的页面。

摘要
优点:只需要在智慧云开发者的平台上创建项目定义数据点,联系智慧云申请绑定相关设备,即可直接使用。
应用程序嵌套网页模式
APP的嵌套网页模式开发的核心就是像开发网站一样,做一个可以控制你的物联网设备的网页或者网站,然后做一个APP外壳。打开APP后,界面其实是自己网站的页面。
简单来说,就像做一个浏览器APP,只不过这个浏览器没有地址输入框,打开就是自己的网站。
有两种制作方法。第一种是自己写框架,第二种是通过第三方生成框架。
框架的核心是浏览器。自己写框架,可以用Android Studio写,调用内置的webview组件,浏览指定的URL第三方框架,很多都支持无代码编程,比如H5APK等。搜索关键词“安卓网页打包APP”,就可以把你的网页打包成一个APP。
摘要
优点:如果做了APP框架,那么理论上就是浏览器,不需要升级。你的网站或网页更新后,再次打开,就是最新的页面。不要总是像Android原生应用一样升级。缺点:有域名,有服务器,工信部和公安备案的流程比较复杂。第三方包装也要收费。
Android原生应用模式
无论是哪种APP,其设计目的都是让物联网设备在移动端可控,让用户用手机或平板电脑等移动设备便捷操作。
对于商业项目,一般要求APP定制,客户需要什么就定制什么。这种情况下,为了实现客户的需求,最好学会自己写APP。
其实APP的核心就是实现与云后台的通信和设备控制。能否实现交流很难。
沟通的核心在哪里?在MQTT客户端。其实不难。为什么不难?我们先搞清楚它的工作原理,然后在APP源代码中实现。

与云中设备的通信分为GService和M2M:GService采用http协议,负责设备注册、注销等。采用M2M MQTT协议,负责实时数据操作。
这种双中心划分非常出色,充分发挥了两种协议的优势。http的特点是简单,MQTT的订阅通知特性具有极佳的实时性。常见的云平台单独使用http来完成注册登录、数据上报、下行控制等功能。
发展指南:http://docs.gizwits.com/zh-cn/quickstart/iOSAPPframe.html
开发一个app:https://club.gizwits.com/thread-8781-1-1.html
总结写一个APP并不难。通过本文,我们分析了常见的APP开发模式,希望大家对物联网APP的开发有所了解。根据开展的项目,合理选择开发方式,在可控的预算和时间内,快速开发出一款合适的APP。


