05 03

「mBack 系安卓手机」指纹支付通病

Posted in 2018
此文章分类在

硬件体验


mBack 系手机很好用,但是它有一个不算硬伤的硬伤。

今天要讲一个关于 「mBack 系安卓手机」(正面按压式指纹识别)在指纹支付支付过程中的一个通病,仔细看看这篇文章,也许会帮助你避免去采坑。

P.S. 关于 mBack 后面我会详细介绍。

起因

经常看我公众号或者微博的朋友应该会看到,我在去年坚果 Pro 2 发布前夕购买了一台坚果 Pro ,但是更多知识当做备用机和测试机来使用。对于我来说,将一台手机作为主力机的标志是「在它上面登录我的微信号」。

刚好上周我妈妈的手机坏了,我将手头的 iPhone 寄回家给她用。于是我自己则开始打算将坚果 Pro 当做主力机用一段时间。

三天后,我在做 Android App 支付测试的时候,发现了一个 mBack 和指纹识别结合之后的交互问题,由于它涉及到「支付」。

我的微博原文:

Smartisan 的 Back 是轻触 Home 键,在支付的时候,交互方式变成了轻触是指纹识别而后支付,而 Back 被移动到屏幕上面,呈现为一个虚拟键。我刚刚在做付款测试的时候,本想 Back ,看看能不能从支付宝正常回到 App 里面去,结果直接付款了 ¥699 ……..

所以我认为,我应该拿出来说一说。关于指纹识别,大家应该不陌生吧。

介绍 mBack

如上图:mBack 有两种最主要的操作方式:轻触=返回(Back)按压=回到桌面(Home)。魅族称之为「用过就回不去的交互方式」,后来也被国内的很多厂商借鉴。

别忘了,之所以我最开始强调了一个概念「正面按压式指纹识别」,意味着,这颗 Home 键是有指纹识别功能的。(下图可以看清楚魅族的 Home 的功能)

当你单独去看 mBack 和指纹识别的时候,它俩都是一种「用过就回不去的交互方式」,当时当它们应用到具体的支付场景中时,这个矛盾就出现了。

所以,我称交互上采用与 mBack 同样方式的手机为「mBack 系」。

案例

当我在选择支付宝或者微信支付后,会自动唤醒他们进行指纹识别,而此时,如果我不想支付,想要回退,在「肌肉记忆」的指导下,我很可能就会习惯性的轻触 Home 键,以达到 Back 的目的,但是此时更高优先级的指纹验证会凌驾于 轻触 Back 之上,所以系统将我我心里的 Back 判定成了通过「指纹识别」去执行支付操作。所以,我用 699 去测试一个功能的悲剧就会出现了。

关于指纹支付和 mBack 的思考

Flyme 和 Smartisan OS 的 Back 操作是轻触 Home 键、这个操作高频高容错率,通过指纹验证去支付这个功能低频低容错率,并且指纹识别的优先级高于 mBack 的优先级。(如图)

Back 是一瞬间的操作,并且在系统里面是一个高频操作,习惯以后会形成肌肉记忆,当想要 Back 的时候会很自然轻触 Home 键,基本上都不会去思考,那么按照目前在支付场景下的逻辑就尴尬了,因为交互上出现了分场景的情况。如下图所示,mBack 和指纹验证出现交集的场景,恰好是支付的场景。

同一个交互存在两种结果,一个是高频高容错率的 Back 操作、另外一个是低频低容错率的支付操作,很显然,两者在使用时候的心理压力是完全不一样的,因此后者所在的场景就很容易被前者的肌肉记忆所覆盖,我想不止我一个人会遇到这样的问题。在支付场景下,让这两者进行对抗,学习成本真的很高,另外退款成本也很大,很多虚拟服务压根就不提供退款。

讲两个支付场景的案例

Flyme

Flyme 在支付场景下没有做任何操作,Back 和 Home 都有可能触发支付。

Smartisan
支付场景下,Back 被屏蔽,移动到了屏幕上一虚拟键的形式存在,这一点说明 Smartisan 意识到了这个问题,但是我认为它做得依旧不够好。

解决方案

Back 是一瞬间的操作,手指触摸到 Home 的时间可能只有零点几秒种甚至更短,Home 键应该是可以识别手指的触摸状态(即,是否触摸在 Home 键上),那么按照这个想法,如果改成支付状态下,轻触 Home 键依旧是 Back ,触摸不放开(两秒,或者其它时间设定)被认定为支付。或者换一种方式,进入支付状态,按两下音量键去激活指纹识别,然后再进行支付,若不激活,则依然认定为 mBack。这样是否可行呢?

说白了,就是在支付场景下增加一个判断逻辑,去识别当前的触摸和按压操作是 Back 还是指纹识别,我个人认为,不要试图去让用户学习有两种结果的交互方式,逻辑上会很乱,特别是在两者存在「优先级」的情况下。

如果不加判断,那就真的要向酷安的一名用户说的那样,就只能用没有被录入指纹的手指去触发 mBack 了。

题外话

今天在找@束健 帮我测试的时候,特意让他断网以后再去测试,结果因为支付宝的离线支付功能,在未联网的情况下支付成功,然后网易云还不退款。好在它比较有警觉性,只选了 12 元,不像我,选了最贵的 699……

支付宝离线支付逻辑的解释请看下面的聊天对话:


接着他又问了一个很好的问题:那 iPhone X 的 Face ID 岂不是进入支付状态就会开始支付了?

没错,但也不全是这样,它分为两种情况。

在第三方支付工具中(例如微信和支付宝),进入支付界面,就会直接识别 Face ID ,进行支付,我只想到一个词来形容:一气呵成

而在在使用系统支付时(例如 Apple Store 购买应用),系统会提示你双击电源键激活面部识别,然后再进行面部识别,执行付款操作,不激活或者激活失败,无法使用面部识别。

微信支付宝并没有调用支付之前的验证过程,不知这个验证过程是 iOS 系统独有,还是微信支付宝并没有调用。

苹果是想要最大程度提升用户对支付的重视程度和支付的容错率,而微信和支付宝想的应该是让你以最畅快的方式先把钱交给它,后面的事情,就是它说了算了。

从这里大概也能看出来了苹果和微信支付宝这样的厂商对于这件事不同的态度了。

P.S. iPhone 8 等具备指纹识别 Home 键的 iPhone 虽然没有采用轻触 Back 的交互,但它们任然有按压返回主页的功能,所以,在一定程度上也是存在着误操作的可能性,不过由于方案不一样,这里就不在深入去探讨了。

最后

写这篇文章的目的,不是想要去歌颂或者诋毁哪一家厂商,我只是想通过我亲身经历的事情去传达一个观点:

在重要且低容错率的事情上(或者用户的不得不走得流程上),适当增加安全验证流程,并不会对整个体验产生影响,反而是在提醒用户,前方高能,请注意!

不管第三方工具怎么做,还是希望系统能够保持最大程度的克制,并给予用户必要的保护。拜托了。

微信二维码

残照以为记

谈不上多深刻,但试图说人话。

Comments
Write a Comment