物联网设备和单纯的嵌入式设备最大的区别是否联网,如果能够联网,就需要对设备端和云端进行相应的编程或者设置,让它们之间进行通信;如果不需要联网,那么烧录软件,让设备自动工作即可,不需要考虑网络通信问题。

此外,有些场合需要提供移动端APP,而且一旦有了APP加持,能够让你的项目显得瞬间高大上。对于找工作的同学而言,能够制作APP可以让你找工作更加容易,对于小公司而言,能够不依赖第三方提供物联网APP,也能极大地节约研发成本。

本文就简单介绍当前几种物联网控制APP模式,让大家了解几种不同的技术路线。

  • 在线生成APP源代码模式

在线生成APP源代码的模式以“机智云”为代表,当你的项目设置完成后(定义数据点是关键),可以在线生成代码包,然后下载之后进行编译。

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

可参考文章使用ESP8266模块DIY一个热水器控制器(二):ESP8266软件篇

总结

优点:可以通过简单的步骤生成源代码,后续还可以修改。
缺点:开机画面以及步骤是机智云统一风格的,还需要登录用户,不能打开APP就是控制自己设备的界面。

  • 在线APP开发方式

更方便的在线APP开发方式是使用机智云新版开发平台(需提前定义数据点),在线自定义APP的功能页面、展示信息,自己替换logo、根据模板来修改图标位置大小等,开发出自己的APP。

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

总结

优点:基本不用什么APP开发基础,也不用修改代码,就能形成个性化APP。

  • 第三方公版APP子设备模式

同样以“ 机智云”为代表,这类APP 的特点是大厂提供“公版APP“,自己的设备可以通过申请加入到大厂的平台中,作为一个子设备(APP界面中的一个特定的小图标)运行,点击了这个小图标之后,就进入了一个专属的页面。

总结

优点:只需要在机智云开发者平台创建项目定义数据点,联系机智云申请绑定相关设备,即可直接使用。

  • APP壳嵌套网页模式

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

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

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

框架的核心是浏览器。自己写框架,可以用Android Studio写,调用内置的webview组件,浏览指定的网址;第三方框架,很多是支持无代码编程的,比如H5APK等等,搜索关键词“安卓网页封装APP”,就可以将你的网页打包成APP了。

总结

优点:如果是做了APP框架,那么理论上它就是一个浏览器,不用升级的。你的网站或者网页更新了之后,再次打开它,就是最新的页面。不用像安卓原生应用一样老是升级。
缺点:要有域名、服务器(或者物联网云平台)、还要经过工信部和公安备案的过程,比较繁琐。第三方封装还需要收费。

  • Android Studio 原生APP模式

不管是那种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。

带你了解物联网控制APP的几种模式相关推荐

  1. 物联网控制APP入门专题(二)---阿里云iot studio移动可视化功能基本操作

    微信小程序连接阿里云物联网平台云端API实现物联操控 03-25 其中包含cryptojs.uuid生成模块,还有用于微信小程序连接阿里云物联网平台云端API的专属sdk,已结实现效果demo,只需填 ...

  2. 物联网控制APP入门专题(五)---使用android studio直接编写物联网控制APP

    摘要:作为物联网控制APP制作系列文章的最终版,本文带给大家的福利是让大家学会制作完完全全自己可控的安卓APP.与前几篇文章介绍的使用第三方平台自动生成.第三方平台帮助打包.以及android stu ...

  3. 物联网控制APP入门专题(四)---使用android studio制作一个控制页面的APP框架

    摘要:上篇文章讲了如何用阿里云IoT Studio快速制作一个网页版的手机端,以及通过第三方平台将这个网页打包成一个APK文件,使它可以安装到手机实现APP的功能.但是使用第三方平台做的APP是需要收 ...

  4. 物联网控制APP入门专题(三)---使用第三方平台将网页打包成APP

    摘要:前面的文章讲了如何用阿里云IoT Studio快速制作一个网页版的手机端,可以通过手机浏览器浏览制定的网址就能实现对物联网设备的控制.本文讲解通过第三方平台将这个网页打包成一个APK文件,安装到 ...

  5. 浅析运动健身APP开发的四种模式

    健身行业是在"互联网+"的大潮中最早觉醒的行业之一,自2015年可谓运动健身APP开发爆发后,各类运动健身APP和智能硬件层出不穷,运动健身APP开发应用市场已被创业者视为开疆破土 ...

  6. 【APPInventor\腾讯云】使用APPInventor开发连接腾讯云的安卓物联网遥控APP

    [APPInventor\腾讯云]使用APPInventor开发连接腾讯云的安卓物联网遥控APP 背景 需求分析 功能分析 数据链路 操作逻辑 实现方式\工具 具体实现 结语 背景 课程作业需要,教师 ...

  7. android 家长控制app下载,任天堂家长控制app下载-任天堂家长控制 安卓版v1.0.2-PC6安卓网...

    任天堂家长控制app帮助家长们监控孩子游戏的移动软件,如其名这款家长控制软件是任天堂为广大家长们打造的智能管理系统,不但可管理孩子的游戏时间,还能分析孩子的游戏数据让家长们更了解孩子的乐趣. 最新新闻 ...

  8. esp8266 继电器接线图_[ESP8266]ESP8266 NodeMCU+电磁继电器 简易物联网控制 详细制作过程...

    一.实现功能 本方案的开发环境为Ardunio IDE,ESP8266wifi模块,结合APP(Blynk)实现建立简易物联网控制基础,这里需要说明的是按照本文档操作后,可以通过Blynk APP控制 ...

  9. 超图解python物联网实作入门_完美图解物联网IoT实操:ESP8266 Arduino,Cordova物联网移动App,JavaScript微控制器编程...

    本书探讨的核心主题是串联.汇流整合.互联网从最初的人际沟通桥梁,拓展成机器之间协同合作的交流管道. 本书强调的是串联网络软件和微电脑控制板,以JavaScript 为主线,开发网络应用程序.手机App ...

最新文章

  1. pat1011. World Cup Betting (20)
  2. 多线程写文件_Shell简单实现多线程
  3. 使用U盘在Mac机上装win8.1系统
  4. 4 个最好的 Linux 引导程序
  5. PostgreSQL中Timestamp转成世纪秒(Unix时间戳)
  6. VULKAN学习资料
  7. Latin1_General_BIN
  8. 文本区域的高度随着内容增加----插件
  9. suspend java_Java线程stop和suspend的废弃
  10. Pano2VR制作全景图缩略图导航
  11. 什么是数据缩减,无损4:1缩减有多难?
  12. 2020杭电计算机考研经验帖
  13. 基于深度学习下的稳定学习究竟是什么?因果学习?迁移学习?之一
  14. Android 这些技术 —— 你都了解过吗
  15. 文字转语音在线转换方法
  16. 虚拟局域网软件开源_如何选择视频会议系统局域网视频会议软件
  17. 写一个自我简介,列出对软件工程课程的希望及个人目标
  18. 小米手机 工程机拆机 【大图哦】
  19. 第四章:WPF依赖/附加属性,数据绑定(一)
  20. 饿了么ui 解决el-form的el-form-item的el-input在输入框内敲击回车页面刷新情况

热门文章

  1. 到北京神州数码思特奇面试了!
  2. 笔记本电脑怎么保养_西藏家用配电箱怎么卖
  3. Reactor实现http服务器,附完整代码
  4. 《MVC实战训练智慧商贸进销存》项目研发阶段性总结
  5. 线程相关内存参数sort_buffer/join_buffer等的内存分配时机
  6. windows凭据密码怎么查看_怎么查看wifi密码
  7. Java判断文件是否存在
  8. 2023-一种无监督目标检测和实例分割方法【Cut and Learn for Unsupervised Object Detection and Instance Segmentation】
  9. Shell脚本创建用户
  10. 熊晨沣蓝牙实战--小程序蓝牙连接2.0