单击几下即可构建物联网移动应用
移动应用是控制物联网设备的不二之选。兼具界面的直观性和随身携带的便利性,这些应用是管理互联设备最简单的方式之一。编写移动应用并不是一件很简单的事情。应用设计涉及独特的编程语言、用户体验 (UX) 专业知识以及其他专精技能。嵌入式工程团队很可能不具备所需的技能组合。虽然团队总是能够在其技能组合中加入移动设计技能,但这样做成本高昂,且极为耗时。如果应用无法正常执行,其收益相应地也会非常惨淡。作为选择,可以将这类项目进行外包。但是,根据应用开发公司 Savvy Apps 介绍,应用开发一般起价在 50,000 美元左右,最高可超过 500,000 美元。这一费用足以让许多互联设备制造商望而却步。
创建移动应用:基础知识
为了了解期间面临的挑战,我们先来看看典型的工作流程:
- 为物联网解决方案开发移动应用时,首先应了解高级用户案例和需求。
- 由此,设计团队创建了 UX 流程,概括指出最终客户与互联产品交互的方式。
- 设计准备就绪之后,会将需求和文档交给开发人员,以便他们在设计移动应用时予以采纳。
在开发方面,iOS 和 Android 完全不同,需要采用不同的技能,因此增加了复杂性。iOS 应用采用 Objective C 和 Swift 语言编写,Android 应用则采用 Java 语言编写。这是为物联网设备开发移动应用最先遇到的挑战之一,因为 OEM 必须根据目标用户群体,决定是支持其中一种平台,还是同时支持两种平台。这种决定决不能轻率,因为一旦选定平台,就必须在互联设备部署生命周期内提供支持。
其他需求:应用基础设施
移动应用也包含两种额外的基础设施:固件(在此上下文中,是指在物联网边缘设备上运行的程序本身)和云。移动应用要想高效,在目标物联网设备上运行的固件就必须与云后端相连,且移动应用应提供状态更新并支持远程管理。这一般借由 API 和库组合实现,具体由处理器和采用的其他硬件决定。根据应用需求,例如生成数据的数量和频率、安全性或者隐私考量,移动应用可以将云部署在公开托管的云上,或者本地服务器上。当然,在做出这个决定时,必须在成本和工程资源之间进行权衡。
连接考虑因素
开发移动应用时,还应考虑连接问题。工程师必须明确指出用户连接物联网设备的方式、连接目的以及连接频率。例如,Wi-Fi 是连接至互联网以及云以通过服务器与设备远程交互的标准方式。但对于某些使用案例,比如用户在设备附近操作,且对带宽的要求较低,则云可以利用蓝牙之类的连接技术进行连接。
拖放式应用可以提升 Flash 中的物联网用户体验
对于想要快速在其物联网设备功能中加入功能性移动应用的 OEM 来说,这些元素远优于其他可用资源。幸运的是,存在其他方法:基于模板的应用工具。这些特定于物联网的工具提供了拖放式方法,可以帮助节省时间,降低成本。Blynk Inc. 提供的 Blynk 软件平台就是一个不错的示例(图 1)。这个面向 iOS 和 Android 的本地移动应用构建平台使得开发人员只需几次点击,即可创建品牌应用,并将它们发布到 App Store 或 Google Play。
Blynk 允许开发人员使用多种功能不同的小工具来“聚合”移动 UI(图 2)。小工具多种多样,比如,开关灯光的按钮、展示传感器数据的表格、由某些事件触发的推送通知等等。这些可直接通过智能手机进行开发。
从固件方面,Blynk 提供库和 API 来将 MCU 或单板计算机连接至 Blynk 云。这些库和 API 负责建立连接、发送和接收数据。它们以小代码段的形式进行封装,可为其他关键设备功能留出足够的内存空间。目前,Blynk 支持超过 400 种类型的硬件和连接模块。其中包括大量基于英特尔® 技术的单板计算机 (SBC),例如 ADI Engineering, Inc. 的 MinnowBoard Turbot 以及 SECO 的 UDOO X86(图 3)。
从后端方面,开源 Blynk 云提供安全的轻量级服务器,可供使用 Blynk 平台的所有用户免费使用。公共 Blynk 云目前每月处理超过 330 亿条消息。根据应用需求,Blynk 云实例有时也可私密运行。重要的是,HTTP API 允许在 Blynk 应用中融入来自其他物联网云的数据。这样,物联网 OEM 可以构建全面的移动应用,这些应用集成来自其他业务系统和合作伙伴的信息,用于增强可用性和用户体验。为了更好地服务企业客户,Blynk 平台正在为 Microsoft Azure、Amazon AWS IoT、IBM BlueMix 及其他主要的云平台添加连接器。目前,市场上数以千计的物联网产品都在使用 Blynk 开发平台,包括智能家居、农业、机器人、医疗和精密设备监控。要抢先了解移动应用能够提供的见解、用户体验和投资回报率,请访问 Blynk 网站提供的教程和演示。