作者分享了在App设计过程中容易忽视的几个问题,总结出来与大家分享。不知道在你在进行产品设计的时候,是否也入坑过?
低版本强制更新问题
这个问题是在产品不断迭代中容易忽视的问题,因为只有当开发人员不能做到低版本兼容的时候才会去想到“哦,应该提醒低版本的用户需要强制了”。
为什么不能继续兼容低版本呢?总结了如下原因:
- 一是老版本不支持现有的业务,出于公司业务上的强制推广;
- 二是业务线的接口的更新不兼容老版本,导致老版本部分需求无法正常使用;
- 三是从公司研发资源的考虑,老版过多维护成本过高。
这个时候大多数的做法有如下几种:
- 第一种:新版本更新弹框主动提示用户老版本不能继续使用某些功能;
- 第二种:系统消息提醒不兼容版本的用户去主动更新;
- 第三种:在某些页面调用后端接口的时候提示用户“版本过低,需要更新到新版本才能使用该功能”。
以上为3种常见的做法,但是这三种做法都是在发现不能兼容低版本的时候的补救方法,用户收到这些提示就能达到目的吗?从用户的角度分析,低版本的用户一直不更新你的app,原因可能是如下几个原因:app中他所需要的功能较少,你的版本更新内容并不能刺激他更新;用户的配置较低(安卓手机较为突出)更新到最新版本就可能出现使用不了的问题。反过来思考,我们能不能提前预估好低版本强制更新的问题,提前做好预防呢?在这里和大家分享一下我的个人想到的方式:
1、不兼容的低版本的更新弹框,只给用户更新按钮,用户不更新,将不能继续使用app,这个可以在后端配置更新弹框的时候设置。该方法虽然较为粗暴,但是可以通过提示话术上的美化,用户有可能容易接受,好处在于效果较为明显;
2、分功能模块进行更新到最新版本的提示,用到不兼容低版本的功能的时候提示用户。该方法复杂度会更高一点,开发的工作量较大,不过好处在于方式用户易于接受一些,但是更新效果会更慢一点。
对于这个问题,任何应用都不能避免,作为运营人员应该做好每一个版本更新推广工作,这样才能有效避免低版本强制更新带来的用户损失和不好的用户体验。作为开发人员应该更多的考虑用户价值,尽量做到老版本的兼容。
用户账号被冻结带来安全问题
这个问题也是在我最近刚好遇到了才引起的重视。我现在的产品是一家B端产品,员工消费是可以用公司账户支付,最近遇到一个问题,员工已经离职,账号已经被冻结,但是app端是已登录状态,导致该用户仍然能够使用公司账户支付,给客户带来一定的经济损失。
通过这件事情想想我们产品的设计过程前期是不是应该预防这种问题的发生,以免问题发生后才进行补救。针对这种问题,从原理上来讲可以根据用户ID进行校验就行,而这种校验大多数会在登录的时候进行账号的校验,而我遇到的问题说明只有这层校验是不能规避问题,这里给一个建议的方法:在服务端能够拿到用户id的关键接口添加一道校验,给用户相应提示或引导用户重新登录。
接口更新的防护
这个问题的准确意思是:在App的迭代中,后端接口肯定会增加更多的字段和提示等,如果开发过程中没有提前做好这种预先的防护,后期用户在使用App的就会出现闪退和App崩掉的情况。举个遇到的栗子,我们最近提交订单的时候新增了一个errorcode,前端因为没有事先做好这方面防护,导致这种错误发生时,前端处理不了,应用直接导致死机。针对这种问题一般开发是会主动去考虑的,不过在这也提醒一下大家,还是去和开发沟通了解一下,以免之后出现类似问题。
多接口调用异常问题的处理
产品的设计中,很多页面都会出现,同时调用多个接口去获取数据的情况。这种时候一般出现问题呢,是因为我们忘了之前该页面有调用其他接口,不断的新增需求忽视要处理好和已有功能的关系。其实在产品设计中接口并行调用和串行调用都是存在的,但是这里需要告诉大家的是,要处理好接口数据异常或调用异常的时候对用户的提示和引导的处理。很多时候我们忽视这个问题导致提示弹框重叠,优先级混乱,导致极差的用户体验。这类问题大多数在开发和测试过程中,会暴露出来,但是作为产品人员能够事先做好这部分的考虑是不是更好。
最近闲下来整理了一下最近的工作记录,整理出这篇文章以供大家简阅,希望能给正在做产品的小伙伴一定的帮助。
分享干货我们是认真的,更多干货尽在爱盈利!