移动应用开发实例_物联网改变移动应用开发的4种方式

7b4d2964a8804b47573acd5a51d9873f.png

图片来源:pixabay.com

来源:物联之家网(iothome.com)

转载请注明来源!

物联网改变了移动应用程序的开发格局。那么,为物联网开发移动应用程序有何不同?

物联网与移动应用程序开发齐头并进。物联网改变了人类与机器的互动方式,甚至改变了机器之间的互动方式——而移动应用程序通常是使之成为可能的关键。

物联网市场的快速增长没有丝毫放缓的迹象。用户要求使用智能设备,而公司正在做出有效响应。与此同时,许多公司正在意识到将现有设备连网可能带来的潜在生产力提高。

所有这些增长已经改变了移动应用的开发格局,并带来了新的机会,同时也增加了组合的复杂性。

那么,为物联网开发移动应用又有何不同?

1、连接物联网设备——物联网中的蓝牙

在当今高度互联的世界里,人们似乎很难相信,当移动应用程序首次出现时,移动应用开发人员不必太担心连接性。例如,几年前您用来记录锻炼的应用程序实际上并不需要连接互联网,而一切都取决于用户输入和设备本身发生的交互。同样,手机游戏也不需连接到互联网,除非是一个多人游戏,您需要与其他玩家连接。

然而,最终,用户要求应用程序具有更先进的功能,比如允许您与配偶合作进行预算编制。该应用程序必须连接到互联网,这样用户才可以彼此交互,并且该应用程序可以在不同位置之间传递信息。

这种对网络连接的新需求增加了移动应用程序开发过程的复杂性,因为它引入了应用程序可能失败的更多潜在领域。在开发过程中您需要问更多问题,例如:用户在没有网络访问的情况下可以执行操作吗?如果不能,他们可以连接网络吗?网络慢吗?这会不会因为网速慢而影响用户体验?如果此操作因连接不良而失败,应用程序应该怎么办?

现在,蓝牙通常是移动应用程序连接物联网设备的最佳方式。(尽管某些设备一旦通过蓝牙进行初始配置后,便会通过网络与移动应用程序进行通信。)不管怎样,蓝牙几乎始终是物联网应用程序中的最常见因素。

就像网络连接一样,蓝牙也给移动开发带来了更多复杂性。蓝牙的核心规范大约有3000页长,虽然有软件库,但它们通常不完整或有缺陷。此外,蓝牙在安全性方面也带来了挑战。一般来说,最好不要通过蓝牙发送敏感数据,但如果必须这样做,则与蓝牙设备配对的用户流量就是一个重要的考虑因素。有多个问题需要回答,比如用户需要输入密码吗?何时输入?如果配对失败会怎样?

作为产品团队,这是一个必须应对的挑战。随着物联网变得越来越普遍,越来越多的设备上线,这是每个开发人员都必须熟悉的事情。

以下是我们发现的一些最佳实践,可以解决蓝牙问题:

▲为用户提供连接蓝牙的明确说明

▲提供蓝牙配对失败时如何尝试的指导

▲在适当情况下使用加密和身份验证

▲尽可能在初始连接后更改出厂默认密码

▲不活动时断开蓝牙连接,以降低电池消耗

2、物联网体验设计

物联网改变移动开发的另一种方式是在设计方面。对于物联网,移动设计师和开发人员必须考虑用户和应用程序之间的典型交互。他们必须考虑移动应用程序、硬件设备以及周围环境或上下文信息。随着产品生命周期的推进,团队将如何做出数据驱动的决策?可能需要跨移动应用程序和硬件设备跟踪用户交互,以形成完整的视图。

我自己对物联网的愿景,也是许多其他人的共同愿景,可以追溯到普适计算的理念——我们可以使用技术来加深与世界和周围人的互动。(来源物联之家网)这意味着移动应用程序开发应逐渐变得(现在已经)与应用程序无关。相反,它应该是帮助人们实现他们的目标,无论是引导用户做出对他们有益的选择,还是自动化重复性的任务。

3、释放巨大的市场机会

如今,要想在商业上取得成功,您需要的只是一个很棒的移动应用。

好吧,这有点夸张。尽管如此,在过去的十年里,无数成功的公司都是从设计精良、开发完善的移动应用程序开始的,这些应用程序以引人注目的方式满足了人们的需求。当您在这些应用中添加物联网功能时,新的收入来源和生产力潜力就会增加。

想想看:一个简单的移动应用程序只要连接到服务器,就会有这么多的想法和可能性,以及越来越多的用户关注。如果您开始将其他种类的硬件整合到这个组合中,那么就会有更多的增值机会。

即使您的应用程序从一开始就不支持物联网,您也可以寻找方法实现它。创建物联网应用程序并不总是意味着要投资自己的定制硬件,您还可以使您的应用程序与市场上已有的硬件兼容。一些现有的物联网设备符合开放标准和协议,可以传输不同类型的数据,例如气象设备的湿度数据或健身手表的心跳数据。HeartyPatch就是硬件开源的一个很好例子,几乎任何应用程序都可以利用它。

4、做出更多数据驱动的决策

人们每天都要做出很多决定,有时,我们的选择是错误的。这不是因为我们不聪明,也不是因为我们没有足够的数据,实际上,我们经常拥有太多数据,而是缺乏足够的洞察力。

物联网使企业能够收集到前所未有的大量数据,因此,在构建数据密集型移动物联网应用程序时,开发人员与数据科学家合作是至关重要的。(来自物联之家网)(您还希望与安全专家合作,确保您负责任地处理数据。)通过机器学习和分析,您可以挖掘数据试图告诉您的故事,并将选择范围缩小到几个很好的选项,而不是太多的未知数。

上面的内容概述了物联网如何推动移动开发。随着它的不断变化,您的团队将需要经验丰富的物联网移动开发人员。如果您正在从事物联网项目,并且需要一些专业的移动开发工作,或者遇到一些问题,可以在评论中告诉我们。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/468655.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

谁都能看懂的网络模型知识

1.网络是我们做嵌入式 避无可避的知识点,但是网络的层次很多,很多时候我们根本理解不了其中的层次和作用,今天跟我们公司的 X 总聊到这个,给我普及了一些知识,我觉得非常有用,分享给大家。最近事…

常用排序算法以及算法性能测试(完整C/C++代码实现)

排序算法性能的比较 注: 由于只是测试算法性能, 所以不会对排序算法做深入讲解, 在随后的时间将会推出排序的详细讲解 问题需求分析 排序算法经过了很长时间的演变,产生了很多种不同的方法。每种算法主要针对不同的数列进行排序,这些排序算法具有各自…

我就随便BB一下

1.如果我开始写文章的时候,停顿了几分钟,那结果应该很明显,这一定是一篇比较垃圾的文章,没什么东西值得看,所以我把之前的删除了,重新开头来写,我认为,一个好的开头一定是…

和我一起探索嵌入式

1.本文为微信群管理员小磊投稿作品,作者计划编写一系列文章,该篇为第一篇,如果有做STM32的同学这将是一个非常好的系列教程,欢迎关注。我15年刚建立了一个BLE的QQ群,很有幸认识了小磊同学,一个非…

Java NIO_I/O基本概念_Java中的缓冲区(Buffer)_通道(Channel)_网络I/O

I/O基本概念 缓冲区基础 缓冲区是I/O的基础, 进程使用read(), write()将数据读出/写入从缓冲区中; 当缓冲区写满, 内核向磁盘发出指令, 将缓冲区中数据写入磁盘中(这一步不需要CPU), 当磁盘控制器将缓冲区装满, 内核将缓冲区数据拷贝到进程中指定的缓冲区; 操作如下图: 当中…

跟一个大佬前辈交流了一下

1.最近,跟我们公司的测试总监聊天,我随便问了下他几个问题,他也给出了答案,在这里随便聊下,希望给大家的职业生涯中有一些借鉴的作用。也能给新入职场的同学一些方向和指引。2.先介绍下这个技术总监&#x…

LINQ简记(1):基本语法

关于LINQ(语言集成查询)是.NET 3.5和Visual Studio 2008以上版本中引入的一种有趣的全新概念,语言版本有VB和C#,由于C#与.NET平台结合最为紧密,也是MS当初首推的语言,因此,本系列文章的示例代码…

我认识的一位前辈~

1.我最近认识了一个老前辈,关注了我的公众号加了我的好友认识的,我想介绍一下这位前辈,不是因为他有多成功,也不是因为他给了我很多钱,我觉得他是一个在平常不过的人了,因为太过于平凡的思考方式…

机器学习_决策树_ID3算法_C4.5算法_CART算法及各个算法Python实现

下面的有些叙述基于我个人理解, 可能与专业书籍描述不同, 但是最终都是表达同一个意思, 如果有不同意见的小伙伴, 请在评论区留言, 我不胜感激. 参考: 周志华-机器学习 https://blog.csdn.net/xiaohukun/article/details/78112917 https://blog.csdn.net/fuqiuai/article/d…

http数据绑定spring mvc详解

转载于:https://www.cnblogs.com/panxuejun/p/6834365.html

ESP32 入门教学,不入门,不教学

1.Internet of things (iot)这个概念非常火,物联网是什么?把所有物品通过射频识别等信息传感设备与互联网连接起来,实现智能化识别和管理。 物联网通过智能感知、识别技术与普适计算、泛在网络的融合应用&a…

一个从华为离职的朋友

1、我在之前的很多文章里面都谈到了我有一个过硬的华为朋友,我很少去炫耀自己有多厉害,认识了谁谁,但是我非常在意那些跟自己有过交情的朋友,这些朋友不是说你离开了就失去了,也不是你落魄了就不能吹水了,今…

机器学习_简单线性回归与多元回归方程原理推导_处理二值数据_最小二乘法解或梯度下降解多元回归方程(详细推导)以及Python代码实现_回归方程度量方式

下面的有些叙述基于我个人理解, 可能与专业书籍描述不同, 但是最终都是表达同一个意思, 如果有不同意见的小伙伴, 请在评论区留言, 我不胜感激. 参考: 周志华-机器学习 最小二乘法求解多元回归方程: https://blog.csdn.net/weixin_39445556/article/details/83543945 梯度下…

手写Java线程池_超详细解说_绝对能运行_代码超详细注释

线程池 问题背景 只是单纯使用 new Thread(runnable).start(); 的方式创建线程, 将会导致严重的程序性能问题: 1.线程创建, 销毁需要消耗很大的系统资源; 2.虚拟机创建线程的数量是有限的; 2.线程调度切换也将使程序性能下降; 针对这些问题, 对线程数量进行管理, 有效地重复利…

分享一个非常 nice 的工具

最近有个问题,我需要经常使用远程连接工具,原因很简单,我需要控制另外一台电脑,我刚开始使用的是 teamviewer 这个软件,刚开始用的时间是非常爽的,不过有一天他给我来了个提示,说我的软件被商用…

推荐周立功先生的一本书

1. 这篇文章主要是推荐周工的一本书,大家在学习嵌入式的时候,很多人不明白嵌入式系统和单片机的区别,又感觉自己对嵌入式有所了解,知道什么是嵌入式,文章里的很多见解我觉得对很多人都非常有帮助,今晚上周工…

图管够!灌篮高手、女儿国…阿里日_这帮程序员太会玩了!

5月10日是阿里一年一度的阿里日,这对阿里人来说,是个非常特别的日子。 那什么是阿里日呢?看看官方介绍: 它起源于2005年4月20日,是为了纪念2003年5月的“非典”时期阿里人的激情和信念。因此阿里巴巴决定,今…

复习Collection_迭代器使用细节_泛型_综合案例

Collection_迭代器使用细节_泛型_综合案例 主要内容 Collection集合迭代器增强for泛型 第一章 Collection集合 1.1 集合概述 集合:集合是java中提供的一种容器,可以用来存储多个数据。 集合和数组既然都是容器,他们之间的区别: 数组的…

Kubernetes dashboard集成heapster

图形化展示度量指标的实现需要集成k8s的另外一个Addons组件: Heapster 。 Heapster原生支持K8s(v1.0.6及以后版本)和 CoreOS ,并且支持多种存储后端,比如: InfluxDB 、 ElasticSearch 、 Kafka 。 下载源包和images文件 下载地址h…

ESP32 分区介绍

软件设计分区表 如上图是正常运行需要的分区,一个系统的正常运行是需要这么多分区的。 分区表,我们软件默认配置的分区表如下 # Espressif ESP32 Partition Table # Name, Type, SubType, Offset, Size, Flags nvs,data,nvs,0x9000,16K, otadata,data,…