我还在构建一个iOS应用,以引导用户完成设置设备并允许其访问Wifi设置的步骤。有人可以提供有关最佳通信协议的技术细节的帮助,以帮助您进行以下操作:
使设备与应用程序连接,以便用户可以使用该应用程序设置设备
使用该应用程序作为设备的屏幕以从可用的SSID中进行选择,输入密码并连接到家庭Wi-Fi。
我考虑了以下两个选项:
使用BLE将iOS应用与设备连接,然后使用BLE传递Wi-Fi SSID列表,设备与应用之间的登录凭据。
仅使用Wi-Fi连接设备并通过Wi-Fi SSID列表,设备和应用程序之间的登录凭据
如何比较用户体验,可靠性(首次尝试完成)和工作量(构建成本较低)?
#1 楼
WiFi如果您使用的是Wi-Fi,则将连接到设备通过手机设置的某种接入点,传递必要的信息并重新连接设备(和手机)回到您实际想要连接的Wi-Fi。
如果您使用的是Wi-Fi,实际上并没有解决方法。输入家庭Wi-Fi的信息是应用UX,对于这个问题有些不合时宜。1因此,让我们集中讨论如何首先以最舒适和安全的方式建立设备的接入点,然后再连接到该设备。 ?
建立访问点
访问点仅在恢复出厂设置后可用。 (您的设备是否恢复出厂设置?)
有一个物理按钮可以进入接入点模式。
您可以通过某种无线方式触发接入点模式。 (从安全角度考虑,不建议这样做。)
初始访问点凭据
没有。 (您可以想象安全性审查。)
它们印在设备的手册中,并且对于每个设备都是相同的。 (如果接入点处于活动状态,时间就足够短。)
它们印在设备的手册中,并且对于每个设备而言都是不同的。 (更好,但确实需要一些生产工作。)
它们以QR码方式(或其他智能设备相机可读的方式)打印在您的设备或手册中。 (与上述内容相同,只是更加舒适。)
我提到这些手册是因为,即使您拥有QR码,并不是每个设备都可能有足够的空间容纳QR码。设计师也非常讨厌QR码。另一方面,手册往往会被丢弃。
BLE
老实说,我不喜欢BLE配对过程,因为它很容易以通常的方式收听。 (参见有关Security.SE的问题,有关BLE安全性的博客或本白皮书,或此处或此处的有关BLE安全性的更多信息)。该协议提供了一些更安全的模式,但这些模式至少与BLE 4.2兼容,这减少了兼容的智能设备以及实现安全配对的所有其他开发工作。甚至甚至可以看一下BLE 5,但如果使用新的安全功能,则可能会用完兼容设备。我对您的设备的理解是,它在正常操作中不使用BLE,这意味着您可能需要大量开发工作来投入其他投资BLE安全性的工作。
使用BLE通常比连接到Wi-Fi接入点更舒服。老实说,尽管在我的项目中,由于这些和其他原因,蓝牙几乎总是被排除在外。从成本和安全性的角度来看,拥有您的实际用例不需要的接口并没有太多用处。另一个很大的缺点是,在设置BLE之后,向用户解释为什么需要设置Wi-Fi。这就是UX地狱。
声光
基本上,您可以在设备具有传感器来传输凭据的所有地方使用它们。如果您的设备带有摄像头,则可以通过智能手机LED来输入您的Wi-Fi密码;如果您具有麦克风,则可以使用声音编码(最好不在非人类听力范围内)进行传输。不要仅在设置过程中包括这些组件。人们发现在不具备这些功能的东西中找到麦克风或摄像头实在令人毛骨悚然。
一些一般建议:
考虑您的设备何时接受Wi-Fi凭证
让时间短一些
具有可识别的触发器对于此时间段内的用户来说,
用户越不用担心凭证的传输就越好。
1应用程序很棘手,因为要读取当前Wi-Fi的Wi-Fi密码有点困难,这可能是您要传输到设备的一组凭据。这就是使UX经常非常痛苦的原因,而在iOS上则更加痛苦,因为您甚至无法轻松获得Wi-Fi列表。 Android让您获得更多信息,然后可以继续传递。但这是每个人都在与之搏斗的UX。
评论
我以为BLE旨在使配对变得简单而安全-您是说它们只是使配对变得简单吗?也许我在想将来的事情?
– Sean Houlihane
17年11月12日在21:04
@SeanHoulihane很好地解决了协议中最大的漏洞,即BLE 4.2被推向市场,这是真的:)
– Helmar♦
17年11月13日15:50
评论
相关:如何在没有屏幕的智能设备上轻松配置Wi-Fi?