前几天,就在我刚设计完这个功能甚至连程序猿还没开发完,就看到了囧老师的新作——关于上传功能的逻辑和思考,然后当时脑抽手残的说要pk,于是就有了这篇含着泪写完的水文。(囧老师是几个月前拜把子认识的前辈,哦对,是被我强行拜把子的,虽然最后他好像还是没有答应,不过这些都不重要)
上传证件是上传功能的一个子集,上传功能包括上传图片、上传压缩包、上传文件等多种可上传的类型。本文的讨论焦点是上传图片形式的证件和压缩包文件。
这次功能的设计主要解决的痛点是 :我们的用户在订单操作过程中,上传证件这一步的流失率高达85%以上,全都转移至pc端上传。分别体验了两端的操作后,找出了以下几处需要优化的地方:1)app端上传证件的页面是h5页,操作性能差,需要原生化;2)pc端可将多张证件照打包一起上传,app端一次只能上传一张,上传效率低,需要能同时上传多张;3)上传流程整体操作起来不够顺畅,给用户的引导性不强;4)pc端上传的证件在app端无法预览和再次上传,用户体验差,需要同步pc上传预览;
1)和 2)的问题容易解决也没有过多需要说明的,下面先来看3)。找到了优化方向后,接下来就开始体验竞品的功能,总结下来一般上传照片的步骤如图a所示:
完成了整个流程的设计后,针对我们的app还有1点特殊之处需要考虑,我们的app有一个特殊的功能叫做“证照识别”,即用户可通过扫描的方式识别身份证、护照,这个功能在上传流程中可以利用之处在于,用户切换相册时除了可以选择手机中已有的相册,还可以在历史识别证件记录中选择,即我们将用户在当前设备中通过证照识别功能识别成功过的照片做成一个相册,和手机相册并列显示。这样做的好处:既充分利用了用户的以往操作行为又加强了用户对证照识别功能的印象。
解决了3)接下来再看4)有关pc上传的压缩包在app中预览的问题。思路是一样的,找了几个可以在app上查看压缩包的竞品:有道云协作、网易qq邮箱和百度云盘。我们的app中要在一个页面兼顾照片和压缩包的展示,图b是原型稿:
当用户在pc端上传了压缩包时,在app上预览的效果就是图b的样子,如果用户想进一步查看压缩包中的内容,就需要下载压缩包,这时我们会为这个压缩包进行解压操作,解压后的样子如图c:
接下来要面对的问题就是:我们允许用户对解压后的压缩包执行哪些操作?这个问题的答案要从两个方面去考虑:第一,保证用户的必要操作;第二,不能把功能设计的过于复杂,不便于开发。经过权衡,确定下来用户可以执行的操作只有:查看压缩包中所包含的图片和查看部分文件类型(pdf,excel,word),即不支持用户对压缩包中的内容进行删除和修改,只能查看部分文件类型。选择做这样限制的原因是因为用户每对压缩包进行一次修改,服务器就要重新打包及更新压缩包并同步pc端的显示,开发起来比较麻烦并且本身意义不大。如果用户有补充证件的需求可从图b的入口上传。这样做的好处是:降低了开发成本低同时也满足了用户补传证件的需求。
到这里,有关这次上传证件的思考和总结就就这么多啦…以后再也不怕写1000字长文啦,啦啦啦啦啦
传送门(囧老师的大作在此,不看会后悔)